XmlPoke 任务
将 XPath 查询指定的值设置为 XML 文件。
参数
下表描述了 XmlPoke
任务的参数。
参数 | 说明 |
---|---|
Namespaces |
可选 String 参数。指定 XPath 查询前缀的命名空间。 Namespaces 是 XML 代码片段,由 Namespace 元素组成,包含 Prefix 和 Uri 属性。 属性 Prefix 指定与 Uri 属性中指定的命名空间关联的前缀。 不要使用空的 Prefix 。 |
Query |
可选 String 参数。指定 XPath 查询。 |
Value |
必选 ITaskItem 参数。 指定要插入到指定路径的值。 |
XmlInputPath |
可选 ITaskItem 参数。 指定 XML 输入为文件路径。 |
备注
除了具有表中列出的参数外,此任务还将从本身继承自 Task 类的 TaskExtension 类继承参数。 有关这些其他参数的列表及其说明的信息,请参阅 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
用作默认命名空间的假命名空间前缀。