Condividi tramite


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);
public static bool DeepEquals (System.Xml.Linq.XNode? n1, System.Xml.Linq.XNode? n2);
static member DeepEquals : System.Xml.Linq.XNode * System.Xml.Linq.XNode -> bool
Public Shared Function DeepEquals (n1 As XNode, n2 As XNode) As Boolean

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));  
Dim xmlTree1 As XElement = _   
        <Root Att1="1" Att2="2">  
            <Child1>1</Child1>  
            <Child2>some content</Child2>  
        </Root>  

Dim xmlTree2 As XElement = _   
        <Root Att1="1" Att2="2">  
            <Child1>1</Child1>  
            <Child2>some content</Child2>  
        </Root>  

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