XNode.ElementsBeforeSelf Method (XName)

 

Returns a filtered collection of the sibling elements before this node, in document order. 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> ElementsBeforeSelf(
	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 of the sibling elements before this node, in document order. Only elements that have a matching XName are included in the collection.

This method only includes siblings in the returned collection. It does not include descendants.

This method uses deferred execution.

The following example uses this method.


                XElement xmlTree = new XElement("Root",
    new XText("Text content."),
    new XElement("Child1", "child1 content"),
    new XElement("Child2", "child2 content"),
    new XElement("Child3", "child3 content"),
    new XText("More text content."),
    new XElement("Child4", "child4 content"),
    new XElement("Child5", "child5 content")
);
XElement child = xmlTree.Element("Child3");
IEnumerable<XElement> elements = child.ElementsBeforeSelf("Child2");
foreach (XElement el in elements)
    Console.WriteLine(el.Name);

This example produces the following output:


Child2

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: