XmlPoke タスク
XPath クエリで指定された値を XML ファイルに設定します。
パラメーター
次の表では、XmlPoke
タスクのパラメーターについて説明します。
パラメーター | 形容 |
---|---|
Namespaces |
省略可能な String パラメーター。XPath クエリ プレフィックスの名前空間を指定します。 Namespaces は、Prefix および Uri 属性を持つ Namespace 要素で構成される XML スニペットです。 属性 Prefix は、属性で指定された名前空間に関連付けるプレフィックス Uri 指定します。 空の Prefix を使用しないでください。 |
Query |
省略可能な String パラメーター。XPath クエリを指定します。 |
Value |
必須 ITaskItem パラメーターです。 指定したパスに挿入する値を指定します。 |
XmlInputPath |
省略可能な ITaskItem パラメーター。 XML 入力をファイル パスとして指定します。 |
備考
このタスクは、テーブルに一覧表示されているパラメーターに加えて、TaskExtension クラスからパラメーターを継承します。このクラス自体は、Task クラスから継承されます。 これらの追加パラメーターとその説明の一覧については、「TaskExtension 基底クラスのを参照してください。
例
変更する sample.xml を次に示します。
<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>
この例では、/Package/mp:PhoneIdentity/PhoneProductId
を変更する場合は、
<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
は、既定の名前空間の人工名前空間プレフィックスとして使用されます。ターゲット XML に指定されたプレフィックスがない場合は常に使用できます。