XNode.Ancestors Méthode

Définition

Retourne une collection des éléments ancêtres de ce nœud.

Surcharges

Ancestors()

Retourne une collection des éléments ancêtres de ce nœud.

Ancestors(XName)

Retourne une collection filtrée des éléments ancêtres de ce nœud. Seuls les éléments avec un XName correspondant sont inclus dans la collection.

Remarques

Si vous le souhaitez, un nom de nœud peut être spécifié pour filtrer les éléments ancêtres avec un nom spécifique.

Les nœuds de la collection retournée sont dans l’ordre inverse du document.

Cette méthode utilise l'exécution différée.

Ancestors()

Retourne une collection des éléments ancêtres de ce nœud.

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)

Retours

IEnumerable<XElement>

IEnumerable<T> de XElement des éléments ancêtres de ce nœud.

Exemples

L’exemple suivant utilise cette méthode pour énumérer les ancêtres d’un nœud.

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  

Cet exemple produit la sortie suivante :

Child  
Root  

Remarques

Cette méthode ne se retourne pas dans les résultats.

Les nœuds de la collection retournée sont dans l’ordre inverse du document.

Cette méthode utilise l'exécution différée.

Voir aussi

S’applique à

Ancestors(XName)

Retourne une collection filtrée des éléments ancêtres de ce nœud. Seuls les éléments avec un XName correspondant sont inclus dans la 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);
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)

Paramètres

name
XName

XName à mettre en correspondance.

Retours

IEnumerable<XElement>

IEnumerable<T> de XElement des éléments ancêtres de ce nœud. Seuls les éléments avec un XName correspondant sont inclus dans la collection.

Les nœuds de la collection retournée sont dans l’ordre inverse du document.

Cette méthode utilise l'exécution différée.

Exemples

L’exemple suivant utilise cette méthode.

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  

Cet exemple produit la sortie suivante :

Child  

Remarques

Cette méthode ne se retourne pas dans les résultats.

Voir aussi

S’applique à