Extensions.Nodes(IEnumerable<T>) Extensions.Nodes(IEnumerable<T>) Extensions.Nodes(IEnumerable<T>) Extensions.Nodes(IEnumerable<T>) Method

Definition

Gibt eine Auflistung der untergeordneten Knoten jedes Dokuments und Elements in der Quellauflistung zurück.Returns a collection of the child nodes of every document and element in the source collection.

public:
generic <typename T>
 where T : System::Xml::Linq::XContainer[System::Runtime::CompilerServices::Extension]
 static System::Collections::Generic::IEnumerable<System::Xml::Linq::XNode ^> ^ Nodes(System::Collections::Generic::IEnumerable<T> ^ source);
public static System.Collections.Generic.IEnumerable<System.Xml.Linq.XNode> Nodes<T> (this System.Collections.Generic.IEnumerable<T> source) where T : System.Xml.Linq.XContainer;
static member Nodes : seq<'T (requires 'T :> System.Xml.Linq.XContainer)> -> seq<System.Xml.Linq.XNode> (requires 'T :> System.Xml.Linq.XContainer)
<Extension()>
Public Iterator Function Nodes(Of T As XContainer) (source As IEnumerable(Of T)) As IEnumerable(Of XNode)

Typparameter

T

Der Typ der Objekte in source, auf XContainer beschränkt.The type of the objects in source, constrained to XContainer.

Parameter

source
IEnumerable<T> IEnumerable<T> IEnumerable<T> IEnumerable<T>

Ein IEnumerable<T> vom Typ XNode, das die Quellauflistung enthält.An IEnumerable<T> of XNode that contains the source collection.

Gibt zurück

Ein IEnumerable<T> vom Typ XNode der untergeordneten Knoten jedes Dokuments und Elements in der Quellauflistung.An IEnumerable<T> of XNode of the child nodes of every document and element in the source collection.

Beispiele

Im folgenden Beispiel werden alle untergeordneten Knoten für jeden Knoten in einer Auflistung von Elementen mit dem Namen Childabgerufen.The following example retrieves all of the child nodes for every node in a collection of elements with the name of Child.

XElement xmlTree = XElement.Parse(  
    @"<Root><Child>aaa<GrandChild>Text</GrandChild>bbb</Child>" +  
    @"<Child>ccc<GrandChild>Text</GrandChild>ddd</Child></Root>");  
IEnumerable<XNode> nodes = xmlTree.Elements("Child").Nodes();  
  
foreach (XNode node in nodes)  
{  
    switch (node.NodeType)  
    {  
        case XmlNodeType.Element:  
            Console.WriteLine("Element: {0}", ((XElement)node).Name);  
            break;  
        case XmlNodeType.Text:  
            Console.WriteLine("Text: {0}", ((XText)node).Value);  
            break;  
    }  
}  
Dim xmlTree As XElement = _  
    <Root>  
        <Child>aaa<GrandChild>Text</GrandChild>bbb</Child>  
        <Child>ccc<GrandChild>Text</GrandChild>ddd</Child>  
    </Root>  
  
Dim nodes = xmlTree.<Child>.Nodes()  
  
' Note that XNode uses XmlNodeType, which is in the System.Xml namespace.  
For Each node As XNode In nodes  
    Select Case node.NodeType  
        Case XmlNodeType.Element  
            Console.WriteLine("Element: {0}", DirectCast(node, XElement).Name)  
        Case XmlNodeType.Text  
            Console.WriteLine("Text: {0}", DirectCast(node, XText).Value)  
    End Select  
Next  
  

Dieses Beispiel erzeugt die folgende Ausgabe:This example produces the following output:

Text: aaa  
Element: GrandChild  
Text: bbb  
Text: ccc  
Element: GrandChild  
Text: ddd  

Hinweise

Diese Methode verwendet verzögerte Ausführung.This method uses deferred execution.

Gilt für:

Siehe auch