XContainer.Elements 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
依照文件順序,傳回這個項目或文件之子代項目的集合。
多載
Elements() |
依照文件順序,傳回這個項目或文件之子代項目的集合。 |
Elements(XName) |
依照文件順序,傳回這個項目或文件之已篩選子代項目的集合。 集合中只會包含具有相符之 XName 的項目。 |
備註
這個方法會使用延後的執行。
Elements()
依照文件順序,傳回這個項目或文件之子代項目的集合。
public:
System::Collections::Generic::IEnumerable<System::Xml::Linq::XElement ^> ^ Elements();
public System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Elements ();
member this.Elements : unit -> seq<System.Xml.Linq.XElement>
Public Function Elements () As IEnumerable(Of XElement)
傳回
IEnumerable<T> 的 XElement,包含此 XContainer 的子項目 (依據文件順序)。
範例
下列範例會建立 XML 樹狀結構,然後使用這個軸方法選取一些元素。
XElement xmlTree = new XElement("Root",
new XElement("Child1", 1),
new XElement("Child2", 2),
new XElement("Child3", 3),
new XElement("Child4", 4),
new XElement("Child5", 5)
);
IEnumerable<XElement> elements =
from el in xmlTree.Elements()
where (int)el <= 3
select el;
foreach (XElement el in elements)
Console.WriteLine(el);
Dim xmlTree As XElement = _
<Root>
<Child1>1</Child1>
<Child2>2</Child2>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
Dim elements = From el In xmlTree.Elements _
Where el.Value <= 3 _
Select el
For Each el In elements
Console.WriteLine(el)
Next
這個範例會產生下列輸出:
<Child1>1</Child1>
<Child2>2</Child2>
<Child3>3</Child3>
以下是相同的範例,但在此情況下,XML 位於命名空間中。 如需詳細資訊,請參閱 使用 XML 命名空間。
XNamespace aw = "http://www.adventure-works.com";
XElement xmlTree = new XElement(aw + "Root",
new XAttribute(XNamespace.Xmlns + "aw", "http://www.adventure-works.com"),
new XElement(aw + "Child1", 1),
new XElement(aw + "Child2", 2),
new XElement(aw + "Child3", 3),
new XElement(aw + "Child4", 4),
new XElement(aw + "Child5", 5)
);
IEnumerable<XElement> elements =
from el in xmlTree.Elements()
where (int)el <= 3
select el;
foreach (XElement el in elements)
Console.WriteLine(el);
Imports <xmlns:aw="http://www.adventure-works.com">
Module Module1
Sub Main()
Dim xmlTree As XElement = _
<aw:Root>
<aw:Child1>1</aw:Child1>
<aw:Child2>2</aw:Child2>
<aw:Child3>3</aw:Child3>
<aw:Child4>4</aw:Child4>
<aw:Child5>5</aw:Child5>
</aw:Root>
Dim elements = From el In xmlTree.Elements _
Where el.Value <= 3 _
Select el
For Each el In elements
Console.WriteLine(el)
Next
End Sub
End Module
這個範例會產生下列輸出:
<aw:Child1 xmlns:aw="http://www.adventure-works.com">1</aw:Child1>
<aw:Child2 xmlns:aw="http://www.adventure-works.com">2</aw:Child2>
<aw:Child3 xmlns:aw="http://www.adventure-works.com">3</aw:Child3>
備註
這個方法會使用延後的執行。
另請參閱
適用於
Elements(XName)
依照文件順序,傳回這個項目或文件之已篩選子代項目的集合。 集合中只會包含具有相符之 XName 的項目。
public:
System::Collections::Generic::IEnumerable<System::Xml::Linq::XElement ^> ^ Elements(System::Xml::Linq::XName ^ name);
public System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Elements (System.Xml.Linq.XName name);
public System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Elements (System.Xml.Linq.XName? name);
member this.Elements : System.Xml.Linq.XName -> seq<System.Xml.Linq.XElement>
Public Function Elements (name As XName) As IEnumerable(Of XElement)
參數
傳回
IEnumerable<T> 的 XElement,包含具有符合 XContainer 之 XName 的子項目 (依據文件順序)。
範例
下列範例會建立 XML 樹狀結構,然後使用這個軸方法選取數個子項目。
XElement xmlTree = new XElement("Root",
new XElement("Type1", 1),
new XElement("Type1", 2),
new XElement("Type2", 3),
new XElement("Type2", 4),
new XElement("Type2", 5)
);
IEnumerable<XElement> elements =
from el in xmlTree.Elements("Type2")
select el;
foreach (XElement el in elements)
Console.WriteLine(el);
Dim xmlTree As XElement = _
<Root>
<Type1>1</Type1>
<Type1>2</Type1>
<Type2>3</Type2>
<Type2>4</Type2>
<Type2>5</Type2>
</Root>
Dim elements = From el In xmlTree.<Type2> _
Select el
For Each el In elements
Console.WriteLine(el)
Next
這個範例會產生下列輸出:
<Type2>3</Type2>
<Type2>4</Type2>
<Type2>5</Type2>
以下是相同的範例,但在此情況下,XML 位於命名空間中。 如需詳細資訊,請參閱 使用 XML 命名空間。
XNamespace aw = "http://www.adventure-works.com";
XElement xmlTree = new XElement(aw + "Root",
new XAttribute(XNamespace.Xmlns + "aw", "http://www.adventure-works.com"),
new XElement(aw + "Type1", 1),
new XElement(aw + "Type1", 2),
new XElement(aw + "Type2", 3),
new XElement(aw + "Type2", 4),
new XElement(aw + "Type2", 5)
);
IEnumerable<XElement> elements =
from el in xmlTree.Elements(aw + "Type2")
select el;
foreach (XElement el in elements)
Console.WriteLine(el);
Imports <xmlns:aw="http://www.adventure-works.com">
Module Module1
Sub Main()
Dim xmlTree As XElement = _
<aw:Root>
<aw:Type1>1</aw:Type1>
<aw:Type1>2</aw:Type1>
<aw:Type2>3</aw:Type2>
<aw:Type2>4</aw:Type2>
<aw:Type2>5</aw:Type2>
</aw:Root>
Dim elements = From el In xmlTree.<aw:Type2> _
Select el
For Each el In elements
Console.WriteLine(el)
Next
End Sub
End Module
這個範例會產生下列輸出:
<aw:Type2 xmlns:aw="http://www.adventure-works.com">3</aw:Type2>
<aw:Type2 xmlns:aw="http://www.adventure-works.com">4</aw:Type2>
<aw:Type2 xmlns:aw="http://www.adventure-works.com">5</aw:Type2>
備註
這個方法會使用延後的執行。