Teilen über


XNodeEqualityComparer.Equals(XNode, XNode) Methode

Definition

Vergleicht die Werte zweier Knoten.

public:
 virtual bool Equals(System::Xml::Linq::XNode ^ x, System::Xml::Linq::XNode ^ y);
public bool Equals (System.Xml.Linq.XNode x, System.Xml.Linq.XNode y);
public bool Equals (System.Xml.Linq.XNode? x, System.Xml.Linq.XNode? y);
override this.Equals : System.Xml.Linq.XNode * System.Xml.Linq.XNode -> bool
Public Function Equals (x As XNode, y As XNode) As Boolean

Parameter

x
XNode

Der erste zu vergleichende XNode.

y
XNode

Der zweite zu vergleichende XNode.

Gibt zurück

Ein Boolean, das angibt, ob die Knoten gleich sind.

Implementiert

Beispiele

Im folgenden Beispiel wird diese Klasse verwendet, um zwei Knoten zu vergleichen.

XElement xmlTree1 = new XElement("Root",  
    new XAttribute("Att1", 1),  
    new XAttribute("Att2", 2),  
    new XElement("Child1", 1),  
    new XElement("Child2", "some content")  
);  
XElement xmlTree2 = new XElement("Root",  
    new XAttribute("Att1", 1),  
    new XAttribute("Att2", 2),  
    new XElement("Child1", 1),  
    new XElement("Child2", "some content")  
);  
XNodeEqualityComparer equalityComparer = new XNodeEqualityComparer();  
Console.WriteLine(equalityComparer.Equals(xmlTree1, xmlTree2));  
xmlTree2.Add(new XElement("NewChild", "new content"));  
Console.WriteLine(equalityComparer.Equals(xmlTree1, xmlTree2));  

Dieses Beispiel erzeugt die folgende Ausgabe:

True  
False  

Hinweise

Die folgenden Kriterien bestimmen, ob zwei Knoten gleich sind:

  • Ein null Knoten ist gleich einem anderen null Knoten, aber ungleich zu einem Nichtknotennull .

  • Zwei XNode Objekte unterschiedlicher Typen sind nie gleich.

  • Zwei XText Knoten sind gleich, wenn sie denselben Text enthalten.

  • Zwei XElement Knoten sind gleich, wenn sie denselben Tagnamen, denselben Satz von Attributen mit den gleichen Werten und (ohne Kommentare und Verarbeitungsanweisungen) zwei gleich lange Sequenzen von paarweise gleichen Inhaltsknoten enthalten.

  • Zwei XDocument Objekte sind gleich, wenn ihre Stammknoten gleich sind.

  • Zwei XComment Knoten sind gleich, wenn sie denselben Kommentartext enthalten.

  • Zwei XProcessingInstruction Knoten sind gleich, wenn sie über das gleiche Ziel und die gleichen Daten verfügen.

  • Zwei XDocumentType Knoten sind gleich, wenn die denselben Namen, den gleichen Namen, die gleiche öffentliche ID, die System-ID und die interne Teilmenge aufweisen.

Gilt für:

Weitere Informationen