Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menampilkan nilai seperti yang ditentukan oleh Kueri XPath dari file XML.
Parameter
Tabel berikut ini menjelaskan parameter tugas XmlPeek.
| Parameter | Deskripsi |
|---|---|
Namespaces |
Parameter String opsional.Menentukan namespace layanan untuk awalan kueri XPath. |
Query |
Parameter String opsional.Menentukan kueri XPath. |
Result |
Parameter output ITaskItem[] opsional.Berisi hasil yang ditampilkan oleh tugas ini. |
XmlContent |
Parameter String opsional.Tentukan input XML sebagai string. |
XmlInputPath |
Parameter ITaskItem opsional. Menentukan input XML sebagai jalur file. |
Keterangan
Selain memiliki parameter yang tercantum dalam tabel, tugas ini mewarisi parameter dari kelas TaskExtension, yang mewarisi dari kelas Task. Untuk daftar parameter tambahan ini dan deskripsinya, lihat kelas dasar TaskExtension.
Contoh
Berikut adalah sampel file XML settings.config untuk dibaca:
<appSettings>
<add key="ProjectFolder" value="S1" />
</appSettings>
Dalam contoh ini, jika Anda ingin membaca value, gunakan kode seperti berikut:
<Target Name="BeforeBuild">
<XmlPeek XmlInputPath="settings.config" Query="appSettings/add[@key='ProjectFolder']/@value">
<Output TaskParameter="Result" ItemName="value" />
</XmlPeek>
<Message Text="Using project folder @(value)." Importance="high" />
<PropertyGroup>
<ProjectFolder>@(value)</ProjectFolder>
</PropertyGroup>
<ItemGroup>
<Compile Include="Projects\$(ProjectFolder)\Controls\Control1.ascx.cs">
<SubType>ASPXCodeBehind</SubType>
</Compile>
</ItemGroup>
</Target>
Dengan kumpulan nama XML, Anda menggunakan parameter Namespaces, seperti dalam contoh berikut. Dengan file XML input XMLFile1.xml:
<?xml version="1.0" encoding="UTF-8"?>
<class AccessModifier='public' Name='test' xmlns:s='http://nsurl'>
<s:variable Type='String' Name='a'>This</s:variable>
<s:variable Type='String' Name='b'>is</s:variable>
<s:variable Type='String' Name='c'>Sparta!</s:variable>
<method AccessModifier='public static' Name='GetVal' />
</class>
Dan Target berikut ini yang ditentukan dalam file proyek:
<Target Name="TestPeek" BeforeTargets="Build">
<!-- Find the Name attributes -->
<XmlPeek XmlInputPath="XMLFile1.xml"
Query="//s:variable/@Name"
Namespaces="<Namespace Prefix='s' Uri='http://nsurl' />">
<Output TaskParameter="Result" ItemName="value1" />
</XmlPeek>
<Message Text="@(value1)"/>
<!-- Find 'variable' nodes (XPath query includes ".") -->
<XmlPeek XmlInputPath="XMLFile1.xml"
Query="//s:variable/."
Namespaces="<Namespace Prefix='s' Uri='http://nsurl' />">
<Output TaskParameter="Result" ItemName="value2" />
</XmlPeek>
<Message Text="@(value2)"/>
</Target>
Output meliputi hal-hal berikut dari target TestPeek:
TestPeek output:
a;b;c
<s:variable Type="String" Name="a" xmlns:s="http://nsurl">This</s:variable>;<s:variable Type="String" Name="b" xmlns:s="http://nsurl">is</s:variable>;<s:variable Type="String" Name="c" xmlns:s="http://nsurl">Sparta!</s:variable>