Condividi tramite


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.

Vedi anche