Export (0) Print
Expand All

XNode::CompareDocumentOrder Method

Compares two nodes to determine their relative XML document order.

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

public:
static int CompareDocumentOrder(
	XNode^ n1, 
	XNode^ n2
)

Parameters

n1
Type: System.Xml.Linq::XNode

First XNode to compare.

n2
Type: System.Xml.Linq::XNode

Second XNode to compare.

Return Value

Type: System::Int32
An int containing 0 if the nodes are equal; -1 if n1 is before n2; 1 if n1 is after n2.

ExceptionCondition
InvalidOperationException

The two nodes do not share a common ancestor.

The XContainer stores its child nodes as a singly-linked list of XNode objects. This means that the CompareDocumentOrder method must traverse the ancestors of the two nodes being compared until it finds the common parent. Then it must traverse the list of the common parent’s child nodes to determine the order of the two nodes being compared. Therefore, using this method might affect your performance.

The following example uses this method.

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

This example produces the following output:

el1 is before el2

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0

Portable Class Library

Supported in: Portable Class Library

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8
Show:
© 2015 Microsoft