Freigeben über


XNode.Ancestors Methode

Definition

Gibt eine Auflistung der übergeordneten Elemente dieses Knotens zurück.

Überlädt

Ancestors()

Gibt eine Auflistung der übergeordneten Elemente dieses Knotens zurück.

Ancestors(XName)

Gibt eine gefilterte Auflistung der übergeordneten Elemente dieses Knotens zurück. Nur Elemente, die über einen übereinstimmenden XName verfügen, sind in der Auflistung enthalten.

Hinweise

Optional kann ein Knotenname angegeben werden, um nach Vorgängerelementen mit einem bestimmten Namen zu filtern.

Die Knoten in der zurückgegebenen Auflistung sind in der umgekehrten Dokumentreihenfolge angeordnet.

Diese Methode verwendet verzögerte Ausführung.

Ancestors()

Quelle:
XNode.cs
Quelle:
XNode.cs
Quelle:
XNode.cs

Gibt eine Auflistung der übergeordneten Elemente dieses Knotens zurück.

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)

Gibt zurück

Ein IEnumerable<T> vom Typ XElement der übergeordneten Elemente dieses Knotens.

Beispiele

Im folgenden Beispiel wird diese Methode verwendet, um die Vorgänger eines Knotens aufzulisten.

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  

Dieses Beispiel erzeugt die folgende Ausgabe:

Child  
Root  

Hinweise

Diese Methode gibt sich in den Ergebnissen nicht selbst zurück.

Die Knoten in der zurückgegebenen Auflistung sind in der umgekehrten Dokumentreihenfolge angeordnet.

Diese Methode verwendet verzögerte Ausführung.

Weitere Informationen

Gilt für:

Ancestors(XName)

Quelle:
XNode.cs
Quelle:
XNode.cs
Quelle:
XNode.cs

Gibt eine gefilterte Auflistung der übergeordneten Elemente dieses Knotens zurück. Nur Elemente, die über einen übereinstimmenden XName verfügen, sind in der Auflistung enthalten.

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);
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)

Parameter

name
XName

Der XName, mit dem eine Übereinstimmung gefunden werden soll.

Gibt zurück

Ein IEnumerable<T> vom Typ XElement der übergeordneten Elemente dieses Knotens. Nur Elemente, die über einen übereinstimmenden XName verfügen, sind in der Auflistung enthalten.

Die Knoten in der zurückgegebenen Auflistung sind in der umgekehrten Dokumentreihenfolge angeordnet.

Diese Methode verwendet verzögerte Ausführung.

Beispiele

Im folgenden Beispiel wird diese Methode verwendet.

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  

Dieses Beispiel erzeugt die folgende Ausgabe:

Child  

Hinweise

Diese Methode gibt sich in den Ergebnissen nicht selbst zurück.

Weitere Informationen

Gilt für: