XmlPoke 工作

將 XPath 查詢所指定的值設定至 XML 檔案。

參數

下表說明 XmlPoke 工作的參數。

參數 描述
Namespaces 選擇性的 String 參數。

指定 XPath 查詢前置詞的命名空間。 Namespaces 是一個 XML 程式碼片段,由 Namespace 元素與 PrefixUri 屬性組成。 屬性 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 在這裡的用途是預設命名空間的假造命名空間前置詞。

另請參閱