XNode.DocumentOrderComparer Proprietà

Definizione

Ottiene un operatore di confronto che può confrontare la posizione relativa di due nodi.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

Valore della proprietà

Oggetto XNodeDocumentOrderComparer che può confrontare la posizione relativa di due nodi.An XNodeDocumentOrderComparer that can compare the relative position of two nodes.

Esempi

Nell'esempio seguente viene creato un albero XML con alcuni elementi.The following example creates an XML tree with some elements. Crea quindi un oggetto List<T> di XNode che contiene alcuni elementi della struttura ad albero XML in modo casuale.It then creates a List<T> of XNode that contains some elements from the XML tree at random. Ordina l'elenco, usando questa proprietà per recuperare un oggetto XNodeDocumentOrderComparerche implementa le System.Collections.IComparer interfacce e System.Collections.Generic.IComparer<T> .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  

Questo esempio produce il seguente output:This example produces the following output:

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

Commenti

Questa proprietà viene utilizzata principalmente internamente per implementare InDocumentOrder il metodo di estensione.This property is primarily used internally for implementing the InDocumentOrder extension method. L'approccio consigliato consiste nell'utilizzare tale metodo di estensione anziché utilizzare direttamente questa proprietà.The recommended approach is to use that extension method instead of using this property directly.

Si applica a

Vedi anche