Partilhar via


Como recuperar um único elemento filho (LINQ to XML)

Este tópico explica como recuperar um único elemento filho, considerando o nome do elemento filho. Quando você souber que o nome do elemento filho e que há apenas um elemento com esse nome, pode ser conveniente recuperar apenas um elemento, em vez de uma coleção.

O método Element retorna o primeiro filho XElement com o XName especificado.

Se você quiser recuperar um único elemento filho no Visual Basic, uma abordagem comum é usar a propriedade XML e, em seguida, recuperar o primeiro elemento usando a notação do indexador de matriz.

Exemplo

O exemplo a seguir demonstra o uso do método Element. Este exemplo usa a árvore XML chamada po e localiza o primeiro elemento chamado Comment.

O exemplo do Visual Basic mostra o uso da notação do indexador de matriz para recuperar um único elemento.

Este exemplo usa o seguinte documento XML: Arquivo XML de exemplo: ordem de compra típica (LINQ to XML).

XElement po = XElement.Load("PurchaseOrder.xml");
XElement e = po.Element("DeliveryNotes");
Console.WriteLine(e);
Dim po As XElement = XElement.Load("PurchaseOrder.xml")
Dim e As XElement = po.<DeliveryNotes>(0)
Console.WriteLine(e)

Este exemplo gera a seguinte saída:

<DeliveryNotes>Please leave packages in shed by driveway.</DeliveryNotes>

O exemplo a seguir mostra o mesmo código para XML que está em um namespace. Para obter mais informações, consulte Trabalhando com namespaces XML.

Este exemplo usa o seguinte documento XML: Arquivo XML de exemplo: Ordem de compra típico em um namespace.

XElement po = XElement.Load("PurchaseOrderInNamespace.xml");
XNamespace aw = "https://www.adventure-works.com";
XElement e = po.Element(aw + "DeliveryNotes");
Console.WriteLine(e);
Imports <xmlns:aw="https://www.adventure-works.com">

Module Module1
    Sub Main()
        Dim po As XElement = XElement.Load("PurchaseOrderInNamespace.xml")
        Dim e As XElement = po.<aw:DeliveryNotes>(0)
        Console.WriteLine(e)
    End Sub
End Module

Este exemplo gera a seguinte saída:

<aw:DeliveryNotes xmlns:aw="https://www.adventure-works.com">Please leave packages in shed by driveway.</aw:DeliveryNotes>

Consulte também

Conceitos

Eixos LINQ to XML