XNode.DocumentOrderComparer Eigenschap

Definitie

Hiermee haalt u een vergelijking op waarmee de relatieve positie van twee knooppunten kan worden vergeleken.

public:
 static property System::Xml::Linq::XNodeDocumentOrderComparer ^ DocumentOrderComparer { System::Xml::Linq::XNodeDocumentOrderComparer ^ get(); };
public static System.Xml.Linq.XNodeDocumentOrderComparer DocumentOrderComparer { get; }
static member DocumentOrderComparer : System.Xml.Linq.XNodeDocumentOrderComparer
Public Shared ReadOnly Property DocumentOrderComparer As XNodeDocumentOrderComparer

Waarde van eigenschap

Een XNodeDocumentOrderComparer die de relatieve positie van twee knooppunten kan vergelijken.

Voorbeelden

In het volgende voorbeeld wordt een XML-structuur met enkele elementen gemaakt. Vervolgens wordt er een List<T> van XNode gemaakt die enkele elementen van de XML-structuur willekeurig bevat. De lijst wordt gesorteerd met behulp van deze eigenschap om een XNodeDocumentOrderComparer, waarmee de System.Collections.IComparer en System.Collections.Generic.IComparer<T> interfaces worden geïmplementeerd, op te halen.

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>();
nodeList.Add(xmlTree.Element("Child5"));
nodeList.Add(xmlTree.Element("Child3"));
nodeList.Add(xmlTree.Element("Child1"));

// Sort nodes in document order.
nodeList.Sort(XNode.DocumentOrderComparer);

foreach (XElement el in nodeList)
    Console.WriteLine(el);
Dim xmlTree As XElement = _
        <Root>
            <Child1>1</Child1>
            <Child2>2</Child2>
            <Child3>3</Child3>
            <Child4>4</Child4>
            <Child5>5</Child5>
        </Root>

Dim nodeList As List(Of XNode) = New List(Of XNode)()
nodeList.Add(xmlTree.Element("Child5"))
nodeList.Add(xmlTree.Element("Child3"))
nodeList.Add(xmlTree.Element("Child1"))

' Sort nodes in document order.
nodeList.Sort(XNode.DocumentOrderComparer)

For Each el In nodeList
    Console.WriteLine(el)
Next

In dit voorbeeld wordt de volgende uitvoer gegenereerd:

<Child1>1</Child1>
<Child3>3</Child3>
<Child5>5</Child5>

Opmerkingen

Deze eigenschap wordt voornamelijk intern gebruikt voor het implementeren van de InDocumentOrder extensiemethode. De aanbevolen methode is om deze extensiemethode te gebruiken in plaats van deze eigenschap rechtstreeks te gebruiken.

Van toepassing op

Zie ook