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

Definitie

Retourneert een verzameling knooppunten die alle knooppunten in de bronverzameling bevat, gesorteerd in documentvolgorde.

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)

Type parameters

T

Het type van de objecten in source, beperkt tot XNode.

Parameters

source
IEnumerable<T>

Een IEnumerable<T> van XNode die de bronverzameling bevat.

Retouren

Een IEnumerable<T> van XNode die alle knooppunten in de bronverzameling bevat, gesorteerd in documentvolgorde.

Voorbeelden

In het volgende voorbeeld wordt een verzameling knooppunten gemaakt die niet in documentvolgorde staan en deze as vervolgens gebruikt om een nieuwe verzameling te maken waarin de knooppunten zich in documentvolgorde bevinden.

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

In dit voorbeeld wordt de volgende uitvoer gegenereerd:

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

Opmerkingen

Deze asmethode maakt gebruik van de uitgestelde uitvoering. De bronverzameling wordt echter eerst opgesomd, de knooppunten in documentvolgorde gesorteerd en levert vervolgens de resultaten op.

Van toepassing op

Zie ook