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
Значение 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 узла равны, если имеют одинаковое имя, открытый идентификатор, идентификатор системы и внутреннее подмножество.
Продукт | Версии |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7 |
.NET Framework | 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8 |
.NET Standard | 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1 |
UWP | 10.0 |