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

Definisi

Mengembalikan kumpulan simpul yang berisi semua simpul dalam kumpulan sumber, diurutkan dalam urutan dokumen.

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)

Jenis parameter

T

Jenis objek dalam , dibatasi sourceke XNode.

Parameter

source
IEnumerable<T>

Salah satunya IEnumerable<T>XNode berisi kumpulan sumber.

Mengembalikan

Salah satunya IEnumerable<T>XNode berisi semua simpul dalam kumpulan sumber, diurutkan dalam urutan dokumen.

Contoh

Contoh berikut membuat kumpulan simpul yang tidak dalam urutan dokumen, lalu menggunakan sumbu ini untuk membuat koleksi baru di mana simpul berada dalam urutan dokumen.

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

Contoh ini menghasilkan output berikut:

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

Keterangan

Metode sumbu ini menggunakan eksekusi yang ditangguhkan. Namun, pertama-tama menghitung koleksi sumbernya, mengurutkan simpul dalam urutan dokumen, lalu menghasilkan hasilnya.

Berlaku untuk

Lihat juga