XNodeDocumentOrderComparer.Compare(XNode, XNode) Methode

Definition

Vergleicht zwei Knoten, um ihre relative Dokumentreihenfolge zu bestimmen.Compares two nodes to determine their relative document order.

public:
 virtual int Compare(System::Xml::Linq::XNode ^ x, System::Xml::Linq::XNode ^ y);
public int Compare (System.Xml.Linq.XNode x, System.Xml.Linq.XNode y);
abstract member Compare : System.Xml.Linq.XNode * System.Xml.Linq.XNode -> int
override this.Compare : System.Xml.Linq.XNode * System.Xml.Linq.XNode -> int
Public Function Compare (x As XNode, y As XNode) As Integer

Parameter

x
XNode

Der erste zu vergleichende XNode.The first XNode to compare.

y
XNode

Der zweite zu vergleichende XNode.The second XNode to compare.

Gibt zurück

Ein Int32 mit dem Wert 0 (null), wenn die Knoten gleich sind, -1, wenn x vor y angeordnet ist, und 1, wenn x nach y angeordnet ist.An Int32 that contains 0 if the nodes are equal; -1 if x is before y; 1 if x is after y.

Implementiert

Ausnahmen

Die beiden Knoten verfügen über kein gemeinsames übergeordnetes Element.The two nodes do not share a common ancestor.

Beispiele

Im folgenden Beispiel wird diese Klasse zum Vergleichen der Dokument Reihenfolge für zwei Knoten verwendet.The following example uses this class to compare document order for two nodes.

XElement xmlTree = new XElement("Root",  
    new XText("Text content."),  
    new XElement("Child1", "child1 content"),  
    new XElement("Child2", "child2 content"),  
    new XElement("Child3", "child3 content"),  
    new XText("More text content."),  
    new XElement("Child4", "child4 content"),  
    new XElement("Child5", "child5 content")  
);  
XElement child3 = xmlTree.Element("Child3");  
XElement child5 = xmlTree.Element("Child5");  
XNodeDocumentOrderComparer documentOrderComparer = new XNodeDocumentOrderComparer();  
int val = documentOrderComparer.Compare(child3, child5);  
if (val == 0)  
    Console.WriteLine("Child3 is same as Child5");  
else if (val < 0)  
    Console.WriteLine("Child3 is before Child5");  
else  
    Console.WriteLine("Child3 is after Child5");  

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

Child3 is before Child5  

Hinweise

Anstatt diese Klasse direkt zu verwenden, wird empfohlen, die InDocumentOrder-Methode zu verwenden.We recommend that instead of using this class directly, you use the InDocumentOrder method. Diese Klasse wird intern von dieser Methode verwendet.This class is used internally by that method.

Gilt für:

Siehe auch