XNode.DocumentOrderComparer Eigenschaft

Definition

Ruft einen Vergleich ab, der die relative Position von zwei Knoten vergleichen kann.Gets a comparer that can compare the relative position of two nodes.

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

Eigenschaftswert

XNodeDocumentOrderComparer

Ein XNodeDocumentOrderComparer, der die relative Position zweier Knoten vergleichen kann.An XNodeDocumentOrderComparer that can compare the relative position of two nodes.

Beispiele

Im folgenden Beispiel wird eine XML-Struktur mit einigen Elementen erstellt.The following example creates an XML tree with some elements. Anschließend wird ein List<T> von erstellt XNode , das einige Elemente aus der XML-Struktur nach dem Zufallsprinzip enthält.It then creates a List<T> of XNode that contains some elements from the XML tree at random. Sie sortiert die Liste und verwendet diese Eigenschaft zum Abrufen eines XNodeDocumentOrderComparer -Objekts, das die System.Collections.IComparer -und- System.Collections.Generic.IComparer<T> Schnittstellen implementiert.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>();  
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  

Dieses Beispiel erzeugt die folgende Ausgabe:This example produces the following output:

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

Hinweise

Diese Eigenschaft wird hauptsächlich intern zum Implementieren der InDocumentOrder Erweiterungsmethode verwendet.This property is primarily used internally for implementing the InDocumentOrder extension method. Die empfohlene Vorgehensweise besteht darin, diese Erweiterungsmethode zu verwenden, anstatt diese Eigenschaft direkt zu verwenden.The recommended approach is to use that extension method instead of using this property directly.

Gilt für: