XNode.NodesBeforeSelf Method

Definition

Returns a collection of the sibling nodes before this node, in document order.

public System.Collections.Generic.IEnumerable<System.Xml.Linq.XNode> NodesBeforeSelf ();

Returns

An IEnumerable<T> of XNode of the sibling nodes before this node, in document order.

Examples

The following example creates an XML tree, and then queries the tree using this axis method.

XElement xmlTree = new XElement("Root",  
    new XText("Text content."),  
    new XElement("Child1", "child1 content"),  
    new XElement("Child2", "child2 content"),  
    new XText("More text content."),  
    new XElement("child3", "child3 content")  
);  
XElement child = xmlTree.Element("Child2");  
IEnumerable<XNode> nodes =  
    from node in child.NodesBeforeSelf()  
    select node;  
foreach (XNode node in nodes)  
    Console.WriteLine("Node type: {0}  {1}",  
        node.NodeType,  
        node.NodeType == XmlNodeType.Text ? (node as XText).Value : "");  

This example produces the following output:

Node type: Text  Text content.  
Node type: Element  

Remarks

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

This method uses deferred execution.

Applies to

Product Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

See also