Ler em inglês

Partilhar via


Extensions.InDocumentOrder<T>(IEnumerable<T>) Método

Definição

Retorna uma coleção de nós que contém todos os nós na coleção de origem, classificados em ordem segundo o documento.

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

Parâmetros de tipo

T

O tipo dos objetos em source, restritos para XNode.

Parâmetros

source
IEnumerable<T>

Um IEnumerable<T> do XNode que contém a coleção de origem.

Retornos

IEnumerable<T>

Um IEnumerable<T> de XNode que contém todos os nós na coleção de origem, classificados em ordem segundo o documento.

Exemplos

O exemplo a seguir cria uma coleção de nós que não estão na ordem do documento e usa esse eixo para criar uma nova coleção em que os nós estão na ordem do documento.

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);  

Esse exemplo gera a saída a seguir:

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

Comentários

Esse método de eixo usa a execução adiada. No entanto, primeiro enumera sua coleção de origem, classifica os nós na ordem do documento e, em seguida, gera os resultados.

Aplica-se a

Produto Versões
.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
.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
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Confira também