XmlPoke (attività)
Imposta i valori come specificato da una query XPath in un file XML.
Parametri
Nella tabella che segue vengono descritti i parametri dell'attività XmlPoke
.
Parametro | Descrizione |
---|---|
Namespaces |
Parametro String facoltativo.Specifica gli spazi dei nomi per i prefissi della query XPath. Namespaces è un frammento XML costituito da elementi Namespace con attributi Prefix e Uri . L'attributo Prefix specifica il prefisso da associare allo spazio dei nomi specificato nell'attributo Uri . Non usare un elemento Prefix vuoto. |
Query |
Parametro String facoltativo.Specifica la query XPath. |
Value |
Parametro ITaskItem obbligatorio. Specifica il valore da inserire nel percorso specificato. |
XmlInputPath |
Parametro ITaskItem facoltativo. Specifica l'input XML come percorso di file. |
Osservazioni:
Oltre a usare i parametri elencati nella tabella, questa attività eredita i parametri dalla classe TaskExtension che a sua volta eredita dalla classe Task. Per un elenco di questi parametri aggiuntivi e le rispettive descrizioni, vedere TaskExtension Base Class.
Esempio
Ecco un sample.xml da modificare:
<Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" >
<Identity Name="Sample.Product " Publisher="CN=1234" Version="1.0.0.0" />
<mp:PhoneIdentity PhoneProductId="456" PhonePublisherId="0" />
</Package>
In questo esempio, se si vuole modificare /Package/mp:PhoneIdentity/PhoneProductId
usare
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Namespace>
<Namespace Prefix="dn" Uri="http://schemas.microsoft.com/appx/manifest/foundation/windows10" />
<Namespace Prefix="mp" Uri="http://schemas.microsoft.com/appx/2014/phone/manifest" />
<Namespace Prefix="uap" Uri="http://schemas.microsoft.com/appx/manifest/uap/windows10" />
</Namespace>
</PropertyGroup>
<Target Name="Poke">
<XmlPoke
XmlInputPath="Sample.xml"
Value="MyId"
Query="/dn:Package/mp:PhoneIdentity/@PhoneProductId"
Namespaces="$(Namespace)"/>
</Target>
</Project>
dn
è qui usato come un prefisso artificiale dello spazio dei nomi per lo spazio dei nomi predefinito.