XContainer.Elements Método

Definição

Retorna uma coleção dos elementos filho desse elemento ou documento, na ordem do documento.

Sobrecargas

Elements()

Retorna uma coleção dos elementos filho desse elemento ou documento, na ordem do documento.

Elements(XName)

Retorna uma coleção filtrada dos elementos filho desse elemento ou documento, na ordem do documento. Somente os elementos que têm um XName correspondente são incluídos na coleção.

Comentários

Este método utiliza execução adiada.

Elements()

Retorna uma coleção dos elementos filho desse elemento ou documento, na ordem do documento.

public System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Elements ();

Retornos

IEnumerable<XElement>

Um IEnumerable<T> de XElement que contém os elementos filho deste XContainer, na ordem de documento.

Exemplos

O exemplo a seguir cria uma árvore XML e seleciona alguns elementos usando esse método de eixo.

XElement xmlTree = new XElement("Root",  
    new XElement("Child1", 1),  
    new XElement("Child2", 2),  
    new XElement("Child3", 3),  
    new XElement("Child4", 4),  
    new XElement("Child5", 5)  
);  
IEnumerable<XElement> elements =  
    from el in xmlTree.Elements()  
    where (int)el <= 3  
    select el;  
foreach (XElement el in elements)  
    Console.WriteLine(el);  

Esse exemplo gera a saída a seguir:

<Child1>1</Child1>  
<Child2>2</Child2>  
<Child3>3</Child3>  

O exemplo a seguir é o mesmo, mas nesse caso o XML está em um namespace. Para obter mais informações, consulte Trabalhar com namespaces XML.

XNamespace aw = "http://www.adventure-works.com";  
XElement xmlTree = new XElement(aw + "Root",  
    new XAttribute(XNamespace.Xmlns + "aw", "http://www.adventure-works.com"),  
    new XElement(aw + "Child1", 1),  
    new XElement(aw + "Child2", 2),  
    new XElement(aw + "Child3", 3),  
    new XElement(aw + "Child4", 4),  
    new XElement(aw + "Child5", 5)  
);  
IEnumerable<XElement> elements =  
    from el in xmlTree.Elements()  
    where (int)el <= 3  
    select el;  
foreach (XElement el in elements)  
    Console.WriteLine(el);  

Esse exemplo gera a saída a seguir:

<aw:Child1 xmlns:aw="http://www.adventure-works.com">1</aw:Child1>  
<aw:Child2 xmlns:aw="http://www.adventure-works.com">2</aw:Child2>  
<aw:Child3 xmlns:aw="http://www.adventure-works.com">3</aw:Child3>  

Comentários

Este método utiliza execução adiada.

Confira também

Aplica-se a

.NET 7 e outras versões
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

Elements(XName)

Retorna uma coleção filtrada dos elementos filho desse elemento ou documento, na ordem do documento. Somente os elementos que têm um XName correspondente são incluídos na coleção.

public System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Elements (System.Xml.Linq.XName name);
public System.Collections.Generic.IEnumerable<System.Xml.Linq.XElement> Elements (System.Xml.Linq.XName? name);

Parâmetros

name
XName

O XName correspondente.

Retornos

IEnumerable<XElement>

Um IEnumerable<T> do XElement que contém os filhos do XContainer, que têm um XName correspondente, na ordem do documento.

Exemplos

O exemplo a seguir cria uma árvore XML e seleciona vários elementos filho usando esse método de eixo.

XElement xmlTree = new XElement("Root",  
    new XElement("Type1", 1),  
    new XElement("Type1", 2),  
    new XElement("Type2", 3),  
    new XElement("Type2", 4),  
    new XElement("Type2", 5)  
);  
IEnumerable<XElement> elements =  
    from el in xmlTree.Elements("Type2")  
    select el;  
foreach (XElement el in elements)  
    Console.WriteLine(el);  

Esse exemplo gera a saída a seguir:

<Type2>3</Type2>  
<Type2>4</Type2>  
<Type2>5</Type2>  

O exemplo a seguir é o mesmo, mas nesse caso o XML está em um namespace. Para obter mais informações, consulte Trabalhar com namespaces XML.

XNamespace aw = "http://www.adventure-works.com";  
XElement xmlTree = new XElement(aw + "Root",  
    new XAttribute(XNamespace.Xmlns + "aw", "http://www.adventure-works.com"),  
    new XElement(aw + "Type1", 1),  
    new XElement(aw + "Type1", 2),  
    new XElement(aw + "Type2", 3),  
    new XElement(aw + "Type2", 4),  
    new XElement(aw + "Type2", 5)  
);  
IEnumerable<XElement> elements =  
    from el in xmlTree.Elements(aw + "Type2")  
    select el;  
foreach (XElement el in elements)  
    Console.WriteLine(el);  

Esse exemplo gera a saída a seguir:

<aw:Type2 xmlns:aw="http://www.adventure-works.com">3</aw:Type2>  
<aw:Type2 xmlns:aw="http://www.adventure-works.com">4</aw:Type2>  
<aw:Type2 xmlns:aw="http://www.adventure-works.com">5</aw:Type2>  

Comentários

Este método utiliza execução adiada.

Confira também

Aplica-se a

.NET 7 e outras versões
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