XNode.DeepEquals(XNode, XNode) Метод

Определение

Сравнивает значения двух узлов, включая значения всех потомков.

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

Параметры

n1
XNode

Первое XNode для сравнения.

n2
XNode

XNode Второй для сравнения.

Возвращаемое значение

true Значение , если узлы равны; в противном случае false.

Примеры

В следующем примере этот метод используется для сравнения двух деревьев 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))

В примере получается следующий вывод.

True

Комментарии

Следующие критерии определяют, равны ли два узла:

  • Узел null равен другому null узлу, но не равен узлу, отличномуnull от узла.

  • Два XNode объекта разных типов никогда не равны.

  • Два XText узла равны, если они содержат один и тот же текст.

  • Два XElement узла равны, если они имеют одно и то же имя тега, одинаковый набор атрибутов с одинаковыми значениями, и (игнорируя примечания и инструкции по обработке), содержат две одинаковые последовательности длины равенства узлов содержимого.

  • Два XDocument узла равны, если их корневые узлы равны.

  • Два XComment узла равны, если они содержат один и тот же текст комментария.

  • Два XProcessingInstruction узла равны, если они имеют одинаковый целевой объект и данные.

  • Два XDocumentType узла равны, если имя совпадает с именем, общедоступным идентификатором, идентификатором системы и внутренним подмножеством.

Применяется к

См. также раздел