XNode.DocumentOrderComparer Property


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

Gets a comparer that can compare the relative position of two nodes.

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

public static XNodeDocumentOrderComparer DocumentOrderComparer { get; }

Property Value

Type: System.Xml.Linq.XNodeDocumentOrderComparer

An XNodeDocumentOrderComparer that can compare the relative position of two nodes.

This property is primarily used internally for implementing the InDocumentOrder<T> extension method. The recommended approach is to use that extension method instead of using this property directly.

The following example creates an XML tree with some elements. It then creates a List<T> of XNode that contains some elements from the XML tree at random. It sorts the list, using this property to retrieve a XNodeDocumentOrderComparer, which implements the System.Collections.IComparer and System.Collections.Generic.IComparer<T> interfaces.

                XElement xmlTree = new XElement("Root",
    new XElement("Child1", 1),
    new XElement("Child2", 2),
    new XElement("Child3", 3),
    new XElement("Child4", 4),
    new XElement("Child5", 5)

List<XNode> nodeList = new List<XNode>();

// Sort nodes in document order.

foreach (XElement el in nodeList)

This example produces the following output:


Universal Windows Platform
Available since 8
.NET Framework
Available since 3.5
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top