Freigeben über


XmlPoke-Aufgabe

Legt Werte gemäß der Angabe einer XPath-Abfrage in eine XML-Datei fest.

Parameter

In der folgenden Tabelle werden die Parameter des XmlPoke Vorgangs beschrieben.

Parameter Beschreibung
Namespaces Optionaler String-Parameter.

Gibt die Namespaces für XPath-Abfragepräfixe an. Namespaces ist ein XML-Codeausschnitt, der aus Namespace Elementen mit Attributen Prefix und Uribesteht. Das Attribut Prefix gibt das Präfix an, das dem in Uri Attribut angegebenen Namespace zugeordnet werden soll. Verwenden Sie keine leere Prefix.
Query Optionaler String-Parameter.

Gibt die XPath-Abfrage an.
Value Erforderlicher ITaskItem-Parameter.

Gibt den Wert an, der in den angegebenen Pfad eingefügt werden soll.
XmlInputPath Optionaler ITaskItem-Parameter.

Gibt die XML-Eingabe als Dateipfad an.

Bemerkungen

Zusätzlich zu den Parametern, die in der Tabelle aufgeführt sind, erbt diese Aufgabe Parameter von der TaskExtension Klasse, die selbst von der Task Klasse erbt. Eine Liste dieser zusätzlichen Parameter und deren Beschreibungen finden Sie unter TaskExtension-Basisklasse.

Beispiel

Hier ist eine sample.xml, die Sie ändern möchten:

<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>

Wenn Sie in diesem Beispiel /Package/mp:PhoneIdentity/PhoneProductIdändern möchten, verwenden Sie

<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 wird hier als künstliches Namespacepräfix für den Standardnamespace verwendet; Sie können es verwenden, wenn kein angegebenes Präfix in der Ziel-XML vorhanden ist.

Siehe auch