Compartilhar via


XNodeEqualityComparer.Equals(XNode, XNode) Método

Definição

Compara os valores de dois nós.

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

Parâmetros

x
XNode

O primeiro XNode a ser comparado.

y
XNode

O segundo XNode a ser comparado.

Retornos

Boolean

Um Boolean que indica se os nós são iguais.

Implementações

Exemplos

O exemplo a seguir usa essa classe para comparar dois nós.

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

Esse exemplo gera a saída a seguir:

True  
False  

Comentários

Os seguintes critérios determinam se dois nós são iguais:

  • Um null nó é igual a outro null nó, mas desigual a um nó nãonull .

  • Dois XNode objetos de tipos diferentes nunca são iguais.

  • Dois XText nós serão iguais se contiverem o mesmo texto.

  • Dois XElement nós serã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 igual a pares de nós de conteúdo iguais.

  • Dois XDocument objetos serão iguais se seus nós raiz forem iguais.

  • Dois XComment nós serão iguais se contiverem o mesmo texto de comentário.

  • Dois XProcessingInstruction nós serão iguais se tiverem o mesmo destino e dados.

  • Dois XDocumentType nós serão iguais se tiverem o mesmo nome, ID pública, ID do sistema e subconjunto interno.

Aplica-se a

Confira também