XNode.Ancestors Metoda

Definicja

Zwraca kolekcję elementów nadrzędnych tego węzła.Returns a collection of the ancestor elements of this node.

Przeciążenia

Ancestors()

Zwraca kolekcję elementów nadrzędnych tego węzła.Returns a collection of the ancestor elements of this node.

Ancestors(XName)

Zwraca filtrowaną kolekcję elementów nadrzędnych tego węzła.Returns a filtered collection of the ancestor elements of this node. Kolekcja zawiera tylko elementy, które XName mają zgodne.Only elements that have a matching XName are included in the collection.

Uwagi

Opcjonalnie można określić nazwę węzła w celu filtrowania elementów nadrzędnych o określonej nazwie.Optionally a node name can be specified to filter for ancestor elements with a specific name.

Węzły w zwracanej kolekcji znajdują się w odwrotnej kolejności dokumentów.The nodes in the returned collection are in reverse document order.

Ta metoda używa odroczonego wykonania.This method uses deferred execution.

Ancestors()

Zwraca kolekcję elementów nadrzędnych tego węzła.Returns a collection of the ancestor elements of this node.

public:
 System::Collections::Generic::IEnumerable<System::Xml::Linq::XElement ^> ^ Ancestors();
public System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Ancestors ();
member this.Ancestors : unit -> seq<System.Xml.Linq.XElement>
Public Function Ancestors () As IEnumerable(Of XElement)

Zwraca

IEnumerable<T> Elementów XElement nadrzędnych tego węzła.An IEnumerable<T> of XElement of the ancestor elements of this node.

Przykłady

Poniższy przykład używa tej metody do wyliczania elementów nadrzędnych węzła.The following example uses this method to enumerate the ancestors of a node.

XElement xmlTree = new XElement("Root",  
    new XElement("Child",   
        new XElement("GrandChild", "content")  
    )  
);  
IEnumerable<XElement> grandChild = xmlTree.Descendants("GrandChild");  
foreach (XElement el in grandChild.Ancestors())  
    Console.WriteLine(el.Name);  
Dim xmlTree As XElement = _   
        <Root>  
            <Child>  
                <GrandChild>content</GrandChild>  
            </Child>  
        </Root>  
  
Dim grandChild As IEnumerable(Of XElement) = xmlTree...<GrandChild>  
For Each el In grandChild.Ancestors()  
    Console.WriteLine(el.Name)  
Next  

Ten przykład generuje następujące wyniki:This example produces the following output:

Child  
Root  

Uwagi

Ta metoda nie zwraca siebie w wynikach.This method does not return itself in the results.

Węzły w zwracanej kolekcji znajdują się w odwrotnej kolejności dokumentów.The nodes in the returned collection are in reverse document order.

Ta metoda używa odroczonego wykonania.This method uses deferred execution.

Zobacz też

Ancestors(XName)

Zwraca filtrowaną kolekcję elementów nadrzędnych tego węzła.Returns a filtered collection of the ancestor elements of this node. Kolekcja zawiera tylko elementy, które XName mają zgodne.Only elements that have a matching XName are included in the collection.

public:
 System::Collections::Generic::IEnumerable<System::Xml::Linq::XElement ^> ^ Ancestors(System::Xml::Linq::XName ^ name);
public System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Ancestors (System.Xml.Linq.XName name);
member this.Ancestors : System.Xml.Linq.XName -> seq<System.Xml.Linq.XElement>
Public Function Ancestors (name As XName) As IEnumerable(Of XElement)

Parametry

name
XName

XName Do dopasowania.The XName to match.

Zwraca

IEnumerable<T> Elementów XElement nadrzędnych tego węzła.An IEnumerable<T> of XElement of the ancestor elements of this node. Kolekcja zawiera tylko elementy, które XName mają zgodne.Only elements that have a matching XName are included in the collection.

Węzły w zwracanej kolekcji znajdują się w odwrotnej kolejności dokumentów.The nodes in the returned collection are in reverse document order.

Ta metoda używa odroczonego wykonania.This method uses deferred execution.

Przykłady

W poniższym przykładzie zastosowano tę metodę.The following example uses this method.

XElement xmlTree = new XElement("Root",  
    new XElement("Child",   
        new XElement("GrandChild", "content")  
    )  
);  
IEnumerable<XElement> grandChild = xmlTree.Descendants("GrandChild");  
foreach (XElement el in grandChild.Ancestors("Child"))  
    Console.WriteLine(el.Name);  
Dim xmlTree As XElement = _   
        <Root>  
            <Child>  
                <GrandChild>content</GrandChild>  
            </Child>  
        </Root>  
  
Dim grandChild As IEnumerable(Of XElement) = xmlTree...<GrandChild>  
For Each el In grandChild.Ancestors("Child")  
    Console.WriteLine(el.Name)  
Next  

Ten przykład generuje następujące wyniki:This example produces the following output:

Child  

Uwagi

Ta metoda nie zwróci siebie w wynikach.This method will not return itself in the results.

Zobacz też

Dotyczy