Udostępnij za pośrednictwem


XNodeEqualityComparer.Equals(XNode, XNode) Metoda

Definicja

Porównuje wartości dwóch węzłów.

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

Parametry

x
XNode

Pierwszy XNode do porównania.

y
XNode

Drugi XNode do porównania.

Zwraca

Boolean

Wartość wskazująca Boolean , czy węzły są równe.

Implementuje

Przykłady

W poniższym przykładzie użyto tej klasy do porównania dwóch węzłów.

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));  

Ten przykład generuje następujące wyniki:

True  
False  

Uwagi

Następujące kryteria określają, czy dwa węzły są równe:

  • Węzeł null jest równy innemu węzłowi, ale nierówny do węzła innego null``null niż węzeł.

  • Dwa XNode obiekty różnych typów nigdy nie są równe.

  • Dwa XText węzły są równe, jeśli zawierają ten sam tekst.

  • Dwa XElement węzły są równe, jeśli mają taką samą nazwę tagu, ten sam zestaw atrybutów z tymi samymi wartościami i (ignorując komentarze i instrukcje przetwarzania), zawierają dwie sekwencje parowania równej zawartości węzłów.

  • Dwa XDocument obiekty są równe, jeśli ich węzły główne są równe.

  • Dwa XComment węzły są równe, jeśli zawierają ten sam tekst komentarza.

  • Dwa XProcessingInstruction węzły są równe, jeśli mają ten sam element docelowy i dane.

  • Dwa XDocumentType węzły są równe, jeśli mają taką samą nazwę, identyfikator publiczny, identyfikator systemu i wewnętrzny podzestaw.

Dotyczy

Zobacz też