Extensions.Ancestors<'T> Method (IEnumerable<'T>, XName)

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Returns a filtered collection of elements that contains the ancestors of every node in the source collection. 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)

static member Ancestors<'T when 'T : XNode> : 
        source:IEnumerable<'T> *
        name:XName -> IEnumerable<XElement>

Parameters

source
Type: System.Collections.Generic.IEnumerable<'T>

An IEnumerable<'T> of XNode that contains the source collection.

name
Type: System.Xml.Linq.XName

The XName to match.

Return Value

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

An IEnumerable<'T> of XElement that contains the ancestors of every node in the source collection. Only elements that have a matching XName are included in the collection.

Type Parameters

T

The type of the objects in source, constrained to XNode.

If multiple nodes in the source collection have the same ancestor with a matching XName, the ancestor will be included multiple times in the result collection.

This method uses deferred execution.

The following example retrieves a collection of the great grandchildren elements. It then uses this axis method to retrieve all ancestors of all elements in the collection that match a specified XName.

No code example is currently available or this language may not be supported.

This example produces the following output:

Great Grand Children Elements
----
GreatGrandChild1
GreatGrandChild2

Ancestors
----
Child1

The following is the same example, but in this case the XML is in a namespace. For more information, see Working with XML Namespaces.

No code example is currently available or this language may not be supported.

This example produces the following output:

Great Grand Children Elements
----
{http://www.adventure-works.com}GreatGrandChild1
{http://www.adventure-works.com}GreatGrandChild2

Ancestors
----
{http://www.adventure-works.com}Child1

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: