XElement.DescendantNodesAndSelf XElement.DescendantNodesAndSelf XElement.DescendantNodesAndSelf XElement.DescendantNodesAndSelf Method

Definição

Retorna uma coleção de nós que contêm esse elemento e todos os nós descendentes desse elemento, na ordem do 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)

Retornos

Um IEnumerable<T> de XNode que contêm esse elemento e todos os nós descendentes desse elemento, na ordem do documento.An IEnumerable<T> of XNode that contain this element, and all descendant nodes of this element, in document order.

Exemplos

O exemplo a seguir cria uma árvore XML e, em seguida, usa isso.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  

Este exemplo gera a seguinte saída:This example produces the following output:

Root  
Child  
Some text  
GrandChild  
element content  

Comentários

Este método utiliza execução adiada.This method uses deferred execution.

Aplica-se a

Veja também