XElement.DescendantNodesAndSelf Metodo

Definizione

Restituisce una raccolta di nodi che contengono questo elemento e tutti i nodi discendenti di questo elemento nell'ordine con cui sono riportati nel documento.Returns a collection of nodes that contain this element, and all descendant nodes of this element, in document order.

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)

Restituisce

IEnumerable<T> di XNode che contengono questo elemento e tutti i nodi discendenti di questo elemento nell'ordine con cui sono riportati nel documento.An IEnumerable<T> of XNode that contain this element, and all descendant nodes of this element, in document order.

Esempi

Nell'esempio seguente viene creato un albero XML, che viene quindi utilizzato da.The following example creates an XML tree, and then uses this .

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  

Questo esempio produce il seguente output:This example produces the following output:

Root  
Child  
Some text  
GrandChild  
element content  

Commenti

Questo metodo usa l'esecuzione posticipata.This method uses deferred execution.

Si applica a

Vedi anche