XNode.DeepEquals(XNode, XNode) Metodo

Definizione

Confronta i valori di due nodi, inclusi i valori di tutti i nodi discendenti.

public static bool DeepEquals (System.Xml.Linq.XNode n1, System.Xml.Linq.XNode n2);
public static bool DeepEquals (System.Xml.Linq.XNode? n1, System.Xml.Linq.XNode? n2);

Parametri

n1
XNode

Primo oggetto XNode da confrontare.

n2
XNode

Secondo oggetto XNode da confrontare.

Restituisce

Boolean

true se i nodi sono uguali; in caso contrario false.

Esempio

Nell'esempio seguente viene usato questo metodo per confrontare due alberi XML.

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")  
);  
Console.WriteLine(XNode.DeepEquals(xmlTree1, xmlTree2));  

Nell'esempio viene prodotto l'output seguente:

True  

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 uguali di nodi di contenuto uguale.

  • Due XDocument nodi 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

Vedi anche