Extensions.XPathSelectElements Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Memilih kumpulan elemen menggunakan ekspresi XPath.
Overload
| Nama | Deskripsi |
|---|---|
| XPathSelectElements(XNode, String) |
Memilih kumpulan elemen menggunakan ekspresi XPath. |
| XPathSelectElements(XNode, String, IXmlNamespaceResolver) |
Memilih kumpulan elemen menggunakan ekspresi XPath, menyelesaikan awalan namespace menggunakan yang ditentukan IXmlNamespaceResolver. |
Keterangan
Meskipun pengurutan koleksi yang dikembalikan tidak ditentukan dalam Rekomendasi XML XPath Language 1.0, metode ekstensi ini mengembalikan simpul dalam urutan dokumen.
Perhatikan bahwa simpul dikembalikan dalam urutan dokumen bahkan saat Anda menggunakan sumbu terbalik, seperti preceding-sibling atau ancestor-or-self.
XPathSelectElements(XNode, String)
- Sumber:
- XNodeNavigator.cs
- Sumber:
- XNodeNavigator.cs
- Sumber:
- XNodeNavigator.cs
- Sumber:
- XNodeNavigator.cs
- Sumber:
- XNodeNavigator.cs
Memilih kumpulan elemen menggunakan ekspresi XPath.
public:
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::IEnumerable<System::Xml::Linq::XElement ^> ^ XPathSelectElements(System::Xml::Linq::XNode ^ node, System::String ^ expression);
public static System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> XPathSelectElements(this System.Xml.Linq.XNode node, string expression);
static member XPathSelectElements : System.Xml.Linq.XNode * string -> seq<System.Xml.Linq.XElement>
<Extension()>
Public Function XPathSelectElements (node As XNode, expression As String) As IEnumerable(Of XElement)
Parameter
Mengembalikan
Salah satunya IEnumerable<T>XElement berisi elemen yang dipilih.
Contoh
Contoh berikut membuat pohon XML kecil dan menggunakan XPathSelectElements untuk memilih sekumpulan elemen.
XElement root = new XElement("Root",
new XElement("Child1", 1),
new XElement("Child1", 2),
new XElement("Child1", 3),
new XElement("Child2", 4),
new XElement("Child2", 5),
new XElement("Child2", 6)
);
IEnumerable<XElement> list = root.XPathSelectElements("./Child2");
foreach (XElement el in list)
Console.WriteLine(el);
Dim root As XElement = _
<Root>
<Child1>1</Child1>
<Child1>2</Child1>
<Child1>3</Child1>
<Child2>4</Child2>
<Child2>5</Child2>
<Child2>6</Child2>
</Root>
Dim list As IEnumerable(Of XElement) = root.XPathSelectElements("./Child2")
For Each el As XElement In list
Console.WriteLine(el)
Next
Contoh ini menghasilkan output berikut:
<Child2>4</Child2>
<Child2>5</Child2>
<Child2>6</Child2>
Keterangan
Meskipun pengurutan koleksi yang dikembalikan tidak ditentukan dalam Rekomendasi XML XPath Language 1.0, metode ekstensi ini mengembalikan simpul dalam urutan dokumen.
Perhatikan bahwa simpul dikembalikan dalam urutan dokumen bahkan saat Anda menggunakan sumbu terbalik, seperti preceding-sibling atau ancestor-or-self.
Berlaku untuk
XPathSelectElements(XNode, String, IXmlNamespaceResolver)
- Sumber:
- XNodeNavigator.cs
- Sumber:
- XNodeNavigator.cs
- Sumber:
- XNodeNavigator.cs
- Sumber:
- XNodeNavigator.cs
- Sumber:
- XNodeNavigator.cs
Memilih kumpulan elemen menggunakan ekspresi XPath, menyelesaikan awalan namespace menggunakan yang ditentukan IXmlNamespaceResolver.
public:
[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::IEnumerable<System::Xml::Linq::XElement ^> ^ XPathSelectElements(System::Xml::Linq::XNode ^ node, System::String ^ expression, System::Xml::IXmlNamespaceResolver ^ resolver);
public static System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> XPathSelectElements(this System.Xml.Linq.XNode node, string expression, System.Xml.IXmlNamespaceResolver? resolver);
public static System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> XPathSelectElements(this System.Xml.Linq.XNode node, string expression, System.Xml.IXmlNamespaceResolver resolver);
static member XPathSelectElements : System.Xml.Linq.XNode * string * System.Xml.IXmlNamespaceResolver -> seq<System.Xml.Linq.XElement>
<Extension()>
Public Function XPathSelectElements (node As XNode, expression As String, resolver As IXmlNamespaceResolver) As IEnumerable(Of XElement)
Parameter
- resolver
- IXmlNamespaceResolver
IXmlNamespaceResolver A untuk awalan namespace dalam ekspresi XPath.
Mengembalikan
Salah satunya IEnumerable<T>XElement berisi elemen yang dipilih.
Contoh
Contoh ini membuat pohon XML yang berisi namespace. Ini menggunakan XmlReader untuk membaca dokumen XML. Kemudian mendapatkan XmlNameTable dari XmlReader, dan XmlNamespaceManager dari XmlNameTable. Ini menggunakan XmlNamespaceManager saat memilih daftar elemen.
string markup = @"
<aw:Root xmlns:aw='http://www.adventure-works.com'>
<aw:Child1>child one data 1</aw:Child1>
<aw:Child1>child one data 2</aw:Child1>
<aw:Child1>child one data 3</aw:Child1>
<aw:Child2>child two data 4</aw:Child2>
<aw:Child2>child two data 5</aw:Child2>
<aw:Child2>child two data 6</aw:Child2>
</aw:Root>";
XmlReader reader = XmlReader.Create(new StringReader(markup));
XElement root = XElement.Load(reader);
XmlNameTable nameTable = reader.NameTable;
XmlNamespaceManager namespaceManager = new XmlNamespaceManager(nameTable);
namespaceManager.AddNamespace("aw", "http://www.adventure-works.com");
IEnumerable<XElement> elements = root.XPathSelectElements("./aw:Child1", namespaceManager);
foreach (XElement el in elements)
Console.WriteLine(el);
Dim markup As XElement = _
<aw:Root xmlns:aw="http://www.adventure-works.com">
<aw:Child1>child one data 1</aw:Child1>
<aw:Child1>child one data 2</aw:Child1>
<aw:Child1>child one data 3</aw:Child1>
<aw:Child2>child two data 4</aw:Child2>
<aw:Child2>child two data 5</aw:Child2>
<aw:Child2>child two data 6</aw:Child2>
</aw:Root>
Dim reader As XmlReader = markup.CreateReader
Dim nameTable As XmlNameTable = reader.NameTable
Dim namespaceManager As XmlNamespaceManager = New XmlNamespaceManager(nameTable)
namespaceManager.AddNamespace("aw", "http://www.adventure-works.com")
Dim elements As IEnumerable(Of XElement) = markup.XPathSelectElements("./aw:Child1", namespaceManager)
For Each el As XElement In elements
Console.WriteLine(el)
Next
Contoh ini menghasilkan output berikut:
<aw:Child1 xmlns:aw="http://www.adventure-works.com">child one data 1</aw:Child1>
<aw:Child1 xmlns:aw="http://www.adventure-works.com">child one data 2</aw:Child1>
<aw:Child1 xmlns:aw="http://www.adventure-works.com">child one data 3</aw:Child1>
Keterangan
Anda dapat menggunakan metode ini untuk mengevaluasi ekspresi XPath yang berisi awalan namespace.
Meskipun pengurutan koleksi yang dikembalikan tidak ditentukan dalam Rekomendasi XML XPath Language 1.0, metode ekstensi ini mengembalikan simpul dalam urutan dokumen.
Perhatikan bahwa simpul dikembalikan dalam urutan dokumen bahkan saat Anda menggunakan sumbu terbalik, seperti preceding-sibling atau ancestor-or-self.