Auf Englisch lesen

Freigeben über


Extensions.InDocumentOrder<T>(IEnumerable<T>) Methode

Definition

Gibt eine in Dokumentreihenfolge sortierte Auflistung von Knoten zurück, die alle Knoten in der Quellauflistung enthält.

C#
public static System.Collections.Generic.IEnumerable<T> InDocumentOrder<T>(this System.Collections.Generic.IEnumerable<T> source) where T : System.Xml.Linq.XNode;

Typparameter

T

Der Typ der Objekte in source, auf XNode beschränkt.

Parameter

source
IEnumerable<T>

Ein IEnumerable<T> vom Typ XNode, das die Quellauflistung enthält.

Gibt zurück

Ein IEnumerable<T> vom Typ XNode, das alle Knoten in der Quellauflistung enthält, in Dokumentreihenfolge sortiert.

Beispiele

Im folgenden Beispiel wird eine Auflistung von Knoten erstellt, die sich nicht in der Dokumentreihenfolge befinden, und dann wird diese Achse verwendet, um eine neue Auflistung zu erstellen, in der sich die Knoten in der Dokumentreihenfolge befinden.

C#
XElement xmlTree = new XElement("Root",  
    new XElement("Item",  
        new XElement("aaa", 1),  
        new XElement("bbb", 2)  
    ),  
    new XElement("Item",  
        new XElement("ccc", 3),  
        new XElement("aaa", 4)  
    ),  
    new XElement("Item",  
        new XElement("ddd", 5),  
        new XElement("eee", 6)  
    )  
);  

XElement[] elementList = {  
    xmlTree.Descendants("ddd").First(),  
    xmlTree.Descendants("ccc").First(),  
    xmlTree.Descendants("aaa").First()  
};  

IEnumerable<XElement> inDocOrder = elementList.InDocumentOrder();  

foreach (XElement el in inDocOrder)  
    Console.WriteLine(el);  

Dieses Beispiel erzeugt die folgende Ausgabe:

<aaa>1</aaa>  
<ccc>3</ccc>  
<ddd>5</ddd>  

Hinweise

Diese Achsenmethode verwendet die verzögerte Ausführung. Es listet jedoch zuerst seine Quellauflistung auf, sortiert die Knoten in der Dokumentreihenfolge und liefert dann die Ergebnisse.

Gilt für:

Produkt Versionen
.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, 8, 9, 10
.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, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Weitere Informationen