XElement.AncestorsAndSelf Method (XName)

 

Returns a filtered collection of elements that contain this element, and the ancestors of this element. Only elements that have a matching XName are included in the collection.

Namespace:   System.Xml.Linq
Assembly:  System.Xml.Linq (in System.Xml.Linq.dll)

public IEnumerable<XElement> AncestorsAndSelf(
	XName name
)

Parameters

name
Type: System.Xml.Linq.XName

The XName to match.

Return Value

Type: System.Collections.Generic.IEnumerable<XElement>

An IEnumerable<T> of XElement that contain this element, and the ancestors of this element. Only elements that have a matching XName are included in the collection.

The elements in the returned collection are in reverse document order.

This method uses deferred execution.

The following example uses this .


                XElement xmlTree = new XElement("Root",
    new XElement("Child",
        new XElement("GrandChild", "element content")
    )
);
XElement gc = xmlTree.Element("Child").Element("GrandChild");
IEnumerable<XElement> aas = gc.AncestorsAndSelf("Child");
foreach (XElement el in aas)
    Console.WriteLine(el.Name);

This example produces the following output:


Child

Universal Windows Platform
Available since 8
.NET Framework
Available since 3.5
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top
Show: