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 comparar.

y
XNode

O segundo XNode para comparar.

Devoluções

A indica Boolean se os nós são iguais.

Implementações

Exemplos

O exemplo seguinte usa esta 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));

Este exemplo produz a seguinte saída:

True
False

Observações

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

  • Um null nó é igual a outro null nó, mas desiguace a um não-nónull .

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

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

  • Dois XElement nós são iguais se tiverem o mesmo nome de etiqueta, o mesmo conjunto de atributos com os mesmos valores e (ignorando comentários e instruções de processamento), conterem duas sequências de comprimento igual de nós de conteúdo igual a par.

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

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

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

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

Aplica-se a

Ver também