XNodeEqualityComparer.Equals(XNode, XNode) Metodo

Definizione

Confronta i valori di due nodi.

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

Parametri

x
XNode

Primo oggetto XNode da confrontare.

y
XNode

Secondo oggetto XNode da confrontare.

Restituisce

Boolean che indica se i nodi sono uguali.

Implementazioni

Esempio

Nell'esempio seguente viene usata questa classe per confrontare due nodi.

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

Nell'esempio viene prodotto l'output seguente:

True  
False  

Commenti

I criteri seguenti determinano se due nodi sono uguali:

  • Un null nodo è uguale a un altro null nodo ma non uguale a un nodo diversonull .

  • Due XNode oggetti di tipi diversi non sono mai uguali.

  • Due XText nodi sono uguali se contengono lo stesso testo.

  • Due XElement nodi sono uguali se hanno lo stesso nome di tag, lo stesso set di attributi con gli stessi valori e (ignorando i commenti e le istruzioni di elaborazione), contengono due sequenze di lunghezza uguale a due nodi di contenuto uguale a coppia.

  • Due XDocument oggetti sono uguali se i nodi radice sono uguali.

  • Due XComment nodi sono uguali se contengono lo stesso testo di commento.

  • Due XProcessingInstruction nodi sono uguali se hanno la stessa destinazione e i dati.

  • Due XDocumentType nodi sono uguali se hanno lo stesso nome, ID pubblico, ID di sistema e subset interno.

Si applica a

Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Vedi anche