Partage via


Tâche XmlPoke

Définit les valeurs spécifiées par une requête XPath dans un fichier XML.

Paramètres

Le tableau suivant décrit les paramètres de la tâche XmlPoke.

Paramètre Description
Namespaces Paramètre String facultatif.

Spécifie les espaces de noms pour les préfixes de requête XPath. Namespaces est un extrait de code XML composé d’éléments Namespace avec des attributs Prefix et Uri. L’attribut Prefix spécifie le préfixe à associer à l’espace de noms spécifié dans Uri attribut. N’utilisez pas de Prefixvide.
Query Paramètre String facultatif.

Spécifie la requête XPath.
Value Paramètre ITaskItem obligatoire.

Spécifie la valeur à insérer dans le chemin d’accès spécifié.
XmlInputPath Paramètre ITaskItem facultatif.

Spécifie l’entrée XML en tant que chemin d’accès de fichier.

Remarques

En plus d’avoir les paramètres répertoriés dans la table, cette tâche hérite des paramètres de la classe TaskExtension, qui hérite elle-même de la classe Task. Pour obtenir la liste de ces paramètres supplémentaires et de leurs descriptions, consultez classe de base TaskExtension.

Exemple

Voici une sample.xml à modifier :

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

Dans cet exemple, si vous souhaitez modifier /Package/mp:PhoneIdentity/PhoneProductId, utilisez

<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 est ici utilisé comme préfixe d’espace de noms artificiel pour l’espace de noms par défaut ; vous pouvez l’utiliser chaque fois qu’il n’existe pas de préfixe spécifié dans le code XML cible.

Voir aussi