XNode.DocumentOrderComparer Özellik

Tanım

İki düğümün göreli konumunu karşılaştırabilen bir karşılaştırıcı alır.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

Özellik Değeri

XNodeDocumentOrderComparer

XNodeDocumentOrderComparerİki düğümün göreli konumunu karşılaştırabilen bir.An XNodeDocumentOrderComparer that can compare the relative position of two nodes.

Örnekler

Aşağıdaki örnek, bazı öğelerle bir XML ağacı oluşturur.The following example creates an XML tree with some elements. Daha sonra List<T> , XNode XML ağacından rastgele olan bazı öğeleri içeren bir öğesi oluşturur.It then creates a List<T> of XNode that contains some elements from the XML tree at random. XNodeDocumentOrderComparerVe arabirimlerini uygulayan öğesini almak için bu özelliği kullanarak listeyi sıralar System.Collections.IComparer 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  

Bu örnek aşağıdaki çıktıyı üretir:This example produces the following output:

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

Açıklamalar

Bu özellik öncelikle uzantı yöntemini uygulamak için dahili olarak kullanılır InDocumentOrder .This property is primarily used internally for implementing the InDocumentOrder extension method. Önerilen yaklaşım, bu özelliği doğrudan kullanmak yerine bu genişletme yöntemini kullanmaktır.The recommended approach is to use that extension method instead of using this property directly.

Şunlara uygulanır