XNode.DocumentOrderComparer Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá porovnávač, který může porovnat relativní pozici dvou uzlů.
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
Hodnota vlastnosti
Může XNodeDocumentOrderComparer porovnat relativní pozici dvou uzlů.
Příklady
Následující příklad vytvoří strom XML s některými prvky. Pak vytvoří List<T> XNode , že obsahuje některé prvky ze stromu XML náhodně. Seřadí seznam pomocí této vlastnosti k načtení XNodeDocumentOrderComparer, který implementuje System.Collections.IComparer a System.Collections.Generic.IComparer<T> rozhraní.
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
Tento příklad vytvoří následující výstup:
<Child1>1</Child1>
<Child3>3</Child3>
<Child5>5</Child5>
Poznámky
Tato vlastnost se primárně používá interně pro implementaci InDocumentOrder metody rozšíření. Doporučeným přístupem je použít tuto metodu rozšíření namísto přímého použití této vlastnosti.