Extensions.InDocumentOrder<T>(IEnumerable<T>) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt eine in Dokumentreihenfolge sortierte Auflistung von Knoten zurück, die alle Knoten in der Quellauflistung enthält.
public:
generic <typename T>
where T : System::Xml::Linq::XNode[System::Runtime::CompilerServices::Extension]
static System::Collections::Generic::IEnumerable<T> ^ InDocumentOrder(System::Collections::Generic::IEnumerable<T> ^ source);
public static System.Collections.Generic.IEnumerable<T> InDocumentOrder<T> (this System.Collections.Generic.IEnumerable<T> source) where T : System.Xml.Linq.XNode;
static member InDocumentOrder : seq<'T (requires 'T :> System.Xml.Linq.XNode)> -> seq<'T (requires 'T :> System.Xml.Linq.XNode)> (requires 'T :> System.Xml.Linq.XNode)
<Extension()>
Public Function InDocumentOrder(Of T As XNode) (source As IEnumerable(Of T)) As IEnumerable(Of T)
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.
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);
Dim xmlTree As XElement = _
<Root>
<Item>
<aaa>1</aaa>
<bbb>2</bbb>
</Item>
<Item>
<ccc>3</ccc>
<aaa>4</aaa>
</Item>
<Item>
<ddd>5</ddd>
<eee>6</eee>
</Item>
</Root>
Dim elementList() As XElement = _
{ _
xmlTree...<ddd>(0), _
xmlTree...<ccc>(0), _
xmlTree...<aaa>(0) _
}
Dim inDocOrder = elementList.InDocumentOrder
For Each el As XElement In inDocOrder
Console.WriteLine(el)
Next
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.