XNode.DeepEquals(XNode, XNode) Método

Definição

Compara os valores de dois nós, incluindo os valores de todos os nós descendentes.Compares the values of two nodes, including the values of all descendant nodes.

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

Parâmetros

n1
XNode

O primeiro XNode a ser comparado.The first XNode to compare.

n2
XNode

O segundo XNode a ser comparado.The second XNode to compare.

Retornos

Boolean

true se os nós forem iguais; caso contrário, false.true if the nodes are equal; otherwise false.

Exemplos

O exemplo a seguir usa esse método para comparar duas árvores XML.The following example uses this method to compare two XML trees.

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

Esse exemplo gera a saída a seguir:This example produces the following output:

True  

Comentários

Os critérios a seguir determinam se dois nós são iguais:The following criteria determine whether two nodes are equal:

  • Um null nó é igual a outro null nó, mas é diferente de um não null nó.A null node is equal to another null node but unequal to a non-null node.

  • Dois XNode objetos de tipos diferentes nunca são iguais.Two XNode objects of different types are never equal.

  • Dois XText nós são iguais se contiverem o mesmo texto.Two XText nodes are equal if they contain the same text.

  • Dois XElement nós são iguais se tiverem o mesmo nome de marca, o mesmo conjunto de atributos com os mesmos valores e (ignorando comentários e instruções de processamento) contiverem duas sequências de comprimento iguais de nós de conteúdo iguais.Two XElement nodes are equal if they have the same tag name, the same set of attributes with the same values, and (ignoring comments and processing instructions) contain two equal length sequences of equal content nodes.

  • Dois XDocument nós são iguais se seus nós raiz são iguais.Two XDocument nodes are equal if their root nodes are equal.

  • Dois XComment nós são iguais se contiverem o mesmo texto de comentário.Two XComment nodes are equal if they contain the same comment text.

  • Dois XProcessingInstruction nós são iguais se tiverem o mesmo destino e dados.Two XProcessingInstruction nodes are equal if they have the same target and data.

  • Dois XDocumentType nós são iguais se tiverem o mesmo nome, ID pública, ID do sistema e subconjunto interno.Two XDocumentType nodes are equal if the have the same name, public ID, system ID, and internal subset.

Aplica-se a