XNode.DocumentOrderComparer Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает компаратор, который может сравнить относительную позицию двух узлов.
public:
static property System::Xml::Linq::XNodeDocumentOrderComparer ^ DocumentOrderComparer { System::Xml::Linq::XNodeDocumentOrderComparer ^ get(); };
public static System.Xml.Linq.XNodeDocumentOrderComparer DocumentOrderComparer { get; }
member this.DocumentOrderComparer : System.Xml.Linq.XNodeDocumentOrderComparer
Public Shared ReadOnly Property DocumentOrderComparer As XNodeDocumentOrderComparer
Значение свойства
Объект XNodeDocumentOrderComparer, который может сравнить относительное положение двух узлов.
Примеры
В следующем примере создается XML-дерево с некоторыми элементами. Затем он создает объект List<T> , XNode содержащий некоторые элементы из XML-дерева случайным образом. Он сортирует список, используя это свойство для получения XNodeDocumentOrderComparer, который реализует System.Collections.IComparer интерфейсы и System.Collections.Generic.IComparer<T> интерфейсы.
XElement xmlTree = new XElement("Root",
new XElement("Child1", 1),
new XElement("Child2", 2),
new XElement("Child3", 3),
new XElement("Child4", 4),
new XElement("Child5", 5)
);
List<XNode> nodeList = new List<XNode>();
nodeList.Add(xmlTree.Element("Child5"));
nodeList.Add(xmlTree.Element("Child3"));
nodeList.Add(xmlTree.Element("Child1"));
// Sort nodes in document order.
nodeList.Sort(XNode.DocumentOrderComparer);
foreach (XElement el in nodeList)
Console.WriteLine(el);
Dim xmlTree As XElement = _
<Root>
<Child1>1</Child1>
<Child2>2</Child2>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
Dim nodeList As List(Of XNode) = New List(Of XNode)()
nodeList.Add(xmlTree.Element("Child5"))
nodeList.Add(xmlTree.Element("Child3"))
nodeList.Add(xmlTree.Element("Child1"))
' Sort nodes in document order.
nodeList.Sort(XNode.DocumentOrderComparer)
For Each el In nodeList
Console.WriteLine(el)
Next
В этом примере выводятся следующие данные:
<Child1>1</Child1>
<Child3>3</Child3>
<Child5>5</Child5>
Комментарии
Это свойство в первую очередь используется для реализации InDocumentOrder метода расширения. Рекомендуемый подход — использовать этот метод расширения вместо непосредственного использования этого свойства.