Propriedade XML Descendant Axis (Visual Basic)
Fornece acesso aos descendentes do seguinte: um XElement objeto, um XDocument objeto, uma coleção de XElement objetos ou uma coleção de XDocument objetos.
Sintaxe
object...<descendant>
Partes
object
Necessário. Um XElement objeto, um XDocument objeto, uma coleção de XElement objetos ou uma coleção de XDocument objetos.
...<
Necessário. Indica o início de uma propriedade de eixo descendente.
descendant
Necessário. Nome dos nós descendentes a aceder, do formulário [prefix:]name
.
Parte | Description |
---|---|
prefix |
Opcional. Prefixo do namespace XML para o nó descendente. Deve ser um namespace XML global definido usando uma Imports instrução. |
name |
Obrigatório. Nome local do nó descendente. Consulte Nomes de elementos e atributos XML declarados. |
>
Necessário. Indica o final de uma propriedade de eixo descendente.
Devolver Valor
Uma coleção de XElement objetos.
Observações
Você pode usar uma propriedade de eixo descendente XML para acessar nós descendentes pelo nome de um XElement ou XDocument objeto, ou de uma coleção de XElement ou XDocument objetos. Use a propriedade XML Value
para acessar o valor do primeiro nó descendente na coleção retornada. Para obter mais informações, consulte Propriedade de valor XML.
O compilador do Visual Basic converte propriedades de eixo descendente em chamadas para o Descendants método.
XML Namespaces
O nome em uma propriedade de eixo descendente pode usar apenas namespaces XML declarados globalmente com a Imports
instrução. Ele não pode usar namespaces XML declarados localmente em literais de elemento XML. Para obter mais informações, consulte Instrução de importação (namespace XML).
Exemplo 1
O exemplo a seguir mostra como acessar o valor do primeiro nó descendente nomeado name
e os valores de todos os nós descendentes nomeados phone
a partir do contacts
objeto.
Dim contacts As XElement =
<contacts>
<contact>
<name>Patrick Hines</name>
<phone type="home">206-555-0144</phone>
<phone type="work">425-555-0145</phone>
</contact>
</contacts>
Console.WriteLine("Name: " & contacts...<name>.Value)
Dim homePhone = From phone In contacts...<phone>
Select phone.Value
Console.WriteLine("Home Phone = {0}", homePhone(0))
Este código exibe o seguinte texto:
Name: Patrick Hines
Home Phone = 206-555-0144
Exemplo 2
O exemplo a seguir declara ns
como um prefixo de namespace XML. Em seguida, ele usa o prefixo do namespace para criar um literal XML e acessar o valor do primeiro nó filho com o nome ns:name
qualificado.
Imports <xmlns:ns = "http://SomeNamespace">
Class TestClass2
Shared Sub TestPrefix()
Dim contacts =
<ns:contacts>
<ns:contact>
<ns:name>Patrick Hines</ns:name>
</ns:contact>
</ns:contacts>
Console.WriteLine("Name: " & contacts...<ns:name>.Value)
End Sub
End Class
Este código exibe o seguinte texto:
Name: Patrick Hines