XNode.NodesBeforeSelf Method
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Returns a collection of the sibling nodes before this node, in document order.
public:
System::Collections::Generic::IEnumerable<System::Xml::Linq::XNode ^> ^ NodesBeforeSelf();
public System.Collections.Generic.IEnumerable<System.Xml.Linq.XNode> NodesBeforeSelf ();
member this.NodesBeforeSelf : unit -> seq<System.Xml.Linq.XNode>
Public Function NodesBeforeSelf () As IEnumerable(Of XNode)
Public Iterator Function NodesBeforeSelf () As IEnumerable(Of XNode)
An IEnumerable<T> of XNode of the sibling nodes before this node, in document order.
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 : "");
Dim xmlTree As XElement = 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") _
)
Dim child As XElement = xmlTree.Element("Child2")
Dim nodes As IEnumerable(Of XNode) = _
From node In child.NodesBeforeSelf() _
Select node
For Each node As XNode In nodes
Dim s As String = ""
If node.NodeType = XmlNodeType.Text Then
s = DirectCast(node, XText).Value
End If
Console.WriteLine("Node type: {0} {1}", node.NodeType, s)
Next
This example produces the following output:
Node type: Text Text content.
Node type: Element
This method only includes siblings in the returned collection. It does not include descendants.
This method uses deferred execution.
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 |
.NET feedback
.NET is an open source project. Select a link to provide feedback: