XElement.DescendantNodesAndSelf メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
この要素およびこの要素のすべての子孫ノードをドキュメント順で格納している、ノードのコレクションを返します。
public:
System::Collections::Generic::IEnumerable<System::Xml::Linq::XNode ^> ^ DescendantNodesAndSelf();
public System.Collections.Generic.IEnumerable<System.Xml.Linq.XNode> DescendantNodesAndSelf();
member this.DescendantNodesAndSelf : unit -> seq<System.Xml.Linq.XNode>
Public Function DescendantNodesAndSelf () As IEnumerable(Of XNode)
戻り値
この要素およびこの要素のすべての子孫ノードを格納している、ドキュメント順の XNode の IEnumerable<T>。
例
次の例では、XML ツリーを作成し、この を使用します。
XElement xmlTree = new XElement("Root",
// Attributes are not nodes, so will not be returned by DescendantNodesAndSelf.
new XAttribute("Att1", "AttributeContent"),
new XElement("Child",
new XText("Some text"),
new XElement("GrandChild", "element content")
)
);
IEnumerable<XNode> dnas =
from node in xmlTree.DescendantNodesAndSelf()
select node;
foreach (XNode node in dnas)
{
if (node is XElement)
Console.WriteLine((node as XElement).Name);
else
Console.WriteLine(node);
}
Dim xmlTree As XElement = _
<Root Att1="AttributeContent">
<Child>Some text<GrandChild>element content</GrandChild>
</Child>
</Root>
Dim dnas As IEnumerable(Of XNode) = _
From node In xmlTree.DescendantNodesAndSelf() _
Select node
For Each node In dnas
If TypeOf node Is XElement Then
Console.WriteLine(DirectCast(node, XElement).Name)
Else
Console.WriteLine(node)
End If
Next
この例を実行すると、次の出力が生成されます。
Root
Child
Some text
GrandChild
element content
注釈
このメソッドは遅延実行を使用します。