Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Depois de criar uma árvore XML ou carregar um documento XML em uma árvore XML, você pode consultá-la para localizar elementos e atributos e recuperar seus valores. Você recupera coleções através dos métodos de eixo, também chamados de eixos. Alguns dos eixos são métodos nas classes XElement e XDocument que retornam coleções IEnumerable<T>. Alguns dos eixos são métodos de extensão na Extensions classe. Os eixos que são implementados como métodos de extensão operam em coleções e retornam coleções.
Conforme descrito na visão geral da classe XElement, um XElement objeto representa um único nó de elemento. O conteúdo de um elemento pode ser complexo (às vezes chamado de conteúdo estruturado), ou pode ser um elemento simples. Um elemento simples pode estar vazio ou pode conter um valor. Se o nó contiver conteúdo estruturado, você poderá usar os vários métodos de eixo para recuperar enumerações de elementos descendentes. Os métodos de eixo mais comumente usados são Elements e Descendants.
Além dos métodos axis, que retornam coleções, há mais dois métodos que você normalmente usará em consultas LINQ to XML. O método Element retorna um único XElement. O método Attribute retorna um único XAttribute.
Para muitos fins, as consultas LINQ fornecem a maneira mais poderosa de examinar uma árvore, extrair dados dela e transformá-la. As consultas LINQ operam em objetos que implementam IEnumerable<T>, e os eixos LINQ to XML retornam IEnumerable<T> das coleções de XElement e IEnumerable<T> das coleções de XAttribute. Você precisa dessas coleções para fazer suas consultas.
Além das funções de eixo que recuperam coleções de elementos e atributos, há funções de eixo que permitem iterar através da árvore de forma detalhada. Por exemplo, em vez de lidar com elementos e atributos, você pode trabalhar com os nós da árvore. Os nós são um nível mais fino de granularidade do que os elementos e atributos. Ao trabalhar com nós, você pode examinar comentários XML, nós de texto, instruções de processamento e muito mais. Essa funcionalidade é importante, por exemplo, para alguém que está escrevendo um processador de texto e deseja salvar documentos como XML. No entanto, a maioria dos programadores XML está preocupada principalmente com elementos, atributos e seus valores.
Métodos para recuperar uma coleção de elementos
A seguir está um resumo dos métodos da XElement classe (ou suas classes base) que você chama XElement para retornar uma coleção de elementos.
| Método | Descrição |
|---|---|
| XNode.Ancestors | Devolve um IEnumerable<T> dos XElement antepassados deste elemento. Uma sobrecarga retorna um IEnumerable<T> dos XElement antepassados com o XName especificado. |
| XContainer.Descendants | Devolve um IEnumerable<T> dos XElement descendentes deste elemento. Uma sobrecarga retorna um IEnumerable<T> dos descendentes de XElement que têm o XName especificado. |
| XContainer.Elements | Retorna um IEnumerable<T> dos XElement elementos filho desse elemento. Uma sobrecarga retorna um IEnumerable<T> dos XElement elementos filho que têm o especificado XName. |
| XNode.ElementsAfterSelf | Retorna um IEnumerable<T> dos XElement elementos que vêm depois desse elemento. Uma sobrecarga retorna um IEnumerable<T> dos XElement elementos após esse elemento que têm o especificado XName. |
| XNode.ElementsBeforeSelf | Retorna um IEnumerable<T> de XElement dos elementos que precedem este elemento. Uma sobrecarga retorna um IEnumerable<T> dos XElement elementos antes deste elemento que possuem o XName especificado. |
| XElement.AncestorsAndSelf | Devolve um IEnumerable<T> deste XElement elemento e dos seus antepassados. Uma sobrecarga retorna um IEnumerable<T> de XElement dos elementos que têm o XName especificado. |
| XElement.DescendantsAndSelf | Devolve um IEnumerable<T> deste XElement elemento e os seus descendentes. Uma sobrecarga retorna um IEnumerable<T> de XElement dos elementos que têm o XName especificado. |
Método para recuperar um único elemento
O método a seguir recupera um único filho de um objeto XElement.
| Método | Descrição |
|---|---|
| XContainer.Element | Devolve o primeiro objeto filho XElement que possui a característica especificada XName. |
Método para recuperar uma coleção de atributos
O método a seguir recupera atributos de um XElement objeto.
| Método | Descrição |
|---|---|
| XElement.Attributes | Retorna um IEnumerable<T> de XAttribute de todos os atributos. |
Método para recuperar um único atributo
O método a seguir recupera um único atributo de um XElement objeto.
| Método | Descrição |
|---|---|
| XElement.Attribute | Devolução do XAttribute que possui o XName especificado. |