Extensions.Elements 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.
Mengembalikan kumpulan elemen turunan dari setiap elemen dan dokumen dalam kumpulan sumber.
Overload
| Nama | Deskripsi |
|---|---|
| Elements<T>(IEnumerable<T>) |
Mengembalikan kumpulan elemen turunan dari setiap elemen dan dokumen dalam kumpulan sumber. |
| Elements<T>(IEnumerable<T>, XName) |
Mengembalikan kumpulan elemen turunan yang difilter dari setiap elemen dan dokumen dalam kumpulan sumber. Hanya elemen yang memiliki XName yang cocok yang disertakan dalam koleksi. |
Keterangan
Visual Basic berisi sumbu elemen terintegrasi yang memungkinkan Anda menemukan semua elemen turunan dengan XName tertentu untuk setiap elemen dalam koleksi sumber.
Metode ini menggunakan eksekusi yang ditangguhkan.
Elements<T>(IEnumerable<T>)
- Sumber:
- Extensions.cs
- Sumber:
- Extensions.cs
- Sumber:
- Extensions.cs
- Sumber:
- Extensions.cs
- Sumber:
- Extensions.cs
Mengembalikan kumpulan elemen turunan dari setiap elemen dan dokumen dalam kumpulan sumber.
public:
generic <typename T>
where T : System::Xml::Linq::XContainer[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::IEnumerable<System::Xml::Linq::XElement ^> ^ Elements(System::Collections::Generic::IEnumerable<T> ^ source);
public static System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Elements<T>(this System.Collections.Generic.IEnumerable<T> source) where T : System.Xml.Linq.XContainer;
public static System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Elements<T>(this System.Collections.Generic.IEnumerable<T?> source) where T : System.Xml.Linq.XContainer;
static member Elements : seq<'T (requires 'T :> System.Xml.Linq.XContainer)> -> seq<System.Xml.Linq.XElement> (requires 'T :> System.Xml.Linq.XContainer)
<Extension()>
Public Function Elements(Of T As XContainer) (source As IEnumerable(Of T)) As IEnumerable(Of XElement)
Jenis parameter
- T
Jenis objek dalam , dibatasi sourceke XContainer.
Parameter
- source
- IEnumerable<T>
Salah satunya IEnumerable<T>XElement berisi kumpulan sumber.
Mengembalikan
Salah IEnumerable<T> satu XElement elemen turunan dari setiap elemen atau dokumen dalam kumpulan sumber.
Contoh
Contoh berikut mengambil kumpulan elemen dengan nama Childelemen . Kemudian menggunakan metode sumbu ini untuk mengambil semua elemen anak dari koleksi.
XElement xmlTree = new XElement("Root",
new XElement("Child",
new XElement("GrandChild1", 1),
new XElement("GrandChild2", 2)
),
new XElement("Child",
new XElement("GrandChild3", 3),
new XElement("GrandChild4", 4)
),
new XElement("Child",
new XElement("GrandChild5", 5),
new XElement("GrandChild6", 6)
)
);
IEnumerable<XElement> allGrandChildren =
from el in xmlTree.Elements("Child").Elements()
select el;
foreach (XElement el in allGrandChildren)
Console.WriteLine(el);
Dim xmlTree As XElement = _
<Root>
<Child>
<GrandChild1>1</GrandChild1>
<GrandChild2>2</GrandChild2>
</Child>
<Child>
<GrandChild3>3</GrandChild3>
<GrandChild4>4</GrandChild4>
</Child>
<Child>
<GrandChild5>5</GrandChild5>
<GrandChild6>6</GrandChild6>
</Child>
</Root>
Dim allGrandChildren = From el In xmlTree.<Child>.Elements _
Select el
For Each el As XElement In allGrandChildren
Console.WriteLine(el)
Next
Contoh ini menghasilkan output berikut:
<GrandChild1>1</GrandChild1>
<GrandChild2>2</GrandChild2>
<GrandChild3>3</GrandChild3>
<GrandChild4>4</GrandChild4>
<GrandChild5>5</GrandChild5>
<GrandChild6>6</GrandChild6>
Berikut ini adalah contoh yang sama, tetapi dalam hal ini XML berada di namespace layanan. Untuk informasi selengkapnya, lihat Bekerja dengan Namespace XML.
XNamespace aw = "http://www.adventure-works.com";
XElement xmlTree = new XElement(aw + "Root",
new XElement(aw + "Child",
new XElement(aw + "GrandChild1", 1),
new XElement(aw + "GrandChild2", 2)
),
new XElement(aw + "Child",
new XElement(aw + "GrandChild3", 3),
new XElement(aw + "GrandChild4", 4)
),
new XElement(aw + "Child",
new XElement(aw + "GrandChild5", 5),
new XElement(aw + "GrandChild6", 6)
)
);
IEnumerable<XElement> allGrandChildren =
from el in xmlTree.Elements(aw + "Child").Elements()
select el;
foreach (XElement el in allGrandChildren)
Console.WriteLine(el);
Imports <xmlns="http://www.adventure-works.com">
Module Module1
Sub Main()
Dim xmlTree As XElement = _
<Root>
<Child>
<GrandChild1>1</GrandChild1>
<GrandChild2>2</GrandChild2>
</Child>
<Child>
<GrandChild3>3</GrandChild3>
<GrandChild4>4</GrandChild4>
</Child>
<Child>
<GrandChild5>5</GrandChild5>
<GrandChild6>6</GrandChild6>
</Child>
</Root>
Dim allGrandChildren = From el In xmlTree.<Child>.Elements _
Select el
For Each el As XElement In allGrandChildren
Console.WriteLine(el)
Next
End Sub
End Module
Contoh ini menghasilkan output berikut:
<GrandChild1 xmlns="http://www.adventure-works.com">1</GrandChild1>
<GrandChild2 xmlns="http://www.adventure-works.com">2</GrandChild2>
<GrandChild3 xmlns="http://www.adventure-works.com">3</GrandChild3>
<GrandChild4 xmlns="http://www.adventure-works.com">4</GrandChild4>
<GrandChild5 xmlns="http://www.adventure-works.com">5</GrandChild5>
<GrandChild6 xmlns="http://www.adventure-works.com">6</GrandChild6>
Keterangan
Meskipun Visual Basic berisi sumbu elemen terintegrasi yang memungkinkan Anda menemukan semua elemen turunan dengan XName tertentu untuk setiap elemen dalam koleksi sumber, tidak ada sumbu elemen terintegrasi yang memungkinkan Anda mengambil koleksi setiap elemen turunan untuk setiap elemen dalam koleksi sumber.
Metode ini menggunakan eksekusi yang ditangguhkan.
Lihat juga
- DescendantNodesAndSelf()
- DescendantsAndSelf()
- DescendantNodes()
- Descendants()
- Attributes
- Gambaran umum LINQ ke XML
Berlaku untuk
Elements<T>(IEnumerable<T>, XName)
- Sumber:
- Extensions.cs
- Sumber:
- Extensions.cs
- Sumber:
- Extensions.cs
- Sumber:
- Extensions.cs
- Sumber:
- Extensions.cs
Mengembalikan kumpulan elemen turunan yang difilter dari setiap elemen dan dokumen dalam kumpulan sumber. Hanya elemen yang memiliki XName yang cocok yang disertakan dalam koleksi.
public:
generic <typename T>
where T : System::Xml::Linq::XContainer[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::IEnumerable<System::Xml::Linq::XElement ^> ^ Elements(System::Collections::Generic::IEnumerable<T> ^ source, System::Xml::Linq::XName ^ name);
public static System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Elements<T>(this System.Collections.Generic.IEnumerable<T> source, System.Xml.Linq.XName name) where T : System.Xml.Linq.XContainer;
public static System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Elements<T>(this System.Collections.Generic.IEnumerable<T?> source, System.Xml.Linq.XName? name) where T : System.Xml.Linq.XContainer;
static member Elements : seq<'T (requires 'T :> System.Xml.Linq.XContainer)> * System.Xml.Linq.XName -> seq<System.Xml.Linq.XElement> (requires 'T :> System.Xml.Linq.XContainer)
<Extension()>
Public Function Elements(Of T As XContainer) (source As IEnumerable(Of T), name As XName) As IEnumerable(Of XElement)
Jenis parameter
- T
Jenis objek dalam , dibatasi sourceke XContainer.
Parameter
- source
- IEnumerable<T>
Salah satunya IEnumerable<T>XElement berisi kumpulan sumber.
Mengembalikan
Salah satu IEnumerable<T>XElement elemen turunan dari setiap elemen dan dokumen dalam koleksi sumber. Hanya elemen yang memiliki XName yang cocok yang disertakan dalam koleksi.
Contoh
Metode ekstensi ini berguna ketika Anda ingin mengambil semua elemen dengan nama tertentu pada kedalaman tertentu. Ini mudah jika dokumen sangat teratur, tetapi jika dokumen tidak teratur, itu bisa sedikit lebih sulit. Dalam contoh berikut, kita ingin mengambil semua aaa elemen yang merupakan turunan dari Item elemen. Elemen tertentu Item mungkin atau mungkin tidak berisi aaa elemen. Ini mudah dicapai menggunakan metode ekstensi ini, sebagai berikut:
XElement xmlTree = new XElement("Root",
new XElement("Item",
new XElement("aaa", 1),
new XElement("bbb", 2)
),
new XElement("Item",
new XElement("ccc", 3),
new XElement("aaa", 4)
),
new XElement("Item",
new XElement("ddd", 5),
new XElement("eee", 6)
)
);
IEnumerable<XElement> allGrandChildren =
from el in xmlTree.Elements("Item").Elements("aaa")
select el;
foreach (XElement el in allGrandChildren)
Console.WriteLine(el);
Dim xmlTree As XElement = _
<Root>
<Item>
<aaa>1</aaa>
<bbb>2</bbb>
</Item>
<Item>
<ccc>3</ccc>
<aaa>4</aaa>
</Item>
<Item>
<ddd>5</ddd>
<eee>6</eee>
</Item>
</Root>
Dim allGrandChildren = From el In xmlTree.<Item>.<aaa> _
Select el
For Each el As XElement In allGrandChildren
Console.WriteLine(el)
Next
Contoh ini menghasilkan output berikut:
<aaa>1</aaa>
<aaa>4</aaa>
Berikut ini adalah contoh yang sama, tetapi dalam hal ini XML berada di namespace layanan. Untuk informasi selengkapnya, lihat Bekerja dengan Namespace XML.
XNamespace aw = "http://www.adventure-works.com";
XElement xmlTree = new XElement(aw + "Root",
new XElement(aw + "Item",
new XElement(aw + "aaa", 1),
new XElement(aw + "bbb", 2)
),
new XElement(aw + "Item",
new XElement(aw + "ccc", 3),
new XElement(aw + "aaa", 4)
),
new XElement(aw + "Item",
new XElement(aw + "ddd", 5),
new XElement(aw + "eee", 6)
)
);
IEnumerable<XElement> allGrandChildren =
from el in xmlTree.Elements(aw + "Item").Elements(aw + "aaa")
select el;
foreach (XElement el in allGrandChildren)
Console.WriteLine(el);
Imports <xmlns="http://www.adventure-works.com">
Module Module1
Sub Main()
Dim xmlTree As XElement = _
<Root>
<Item>
<aaa>1</aaa>
<bbb>2</bbb>
</Item>
<Item>
<ccc>3</ccc>
<aaa>4</aaa>
</Item>
<Item>
<ddd>5</ddd>
<eee>6</eee>
</Item>
</Root>
Dim allGrandChildren = From el In xmlTree.<Item>.<aaa> _
Select el
For Each el As XElement In allGrandChildren
Console.WriteLine(el)
Next
End Sub
End Module
Contoh ini menghasilkan output berikut:
<aaa xmlns="http://www.adventure-works.com">1</aaa>
<aaa xmlns="http://www.adventure-works.com">4</aaa>
Keterangan
Visual Basic pengguna dapat menggunakan sumbu elemen terintegrasi untuk mengambil elemen turunan dari setiap elemen dalam koleksi.
Metode ini menggunakan eksekusi yang ditangguhkan.
Lihat juga
- DescendantNodesAndSelf()
- DescendantsAndSelf()
- DescendantNodes()
- Descendants()
- Attributes
- Gambaran umum LINQ ke XML