Propriedade de eixo descendente XML (Visual Basic)
Fornece acesso aos descendentes de um dos seguintes: um objeto de XElement, um objeto de XDocument, uma coleção de objetos XElement, ou uma coleção de objetos XDocument.
Sintaxe
object...<descendant>
Partes
object
Necessário. Um objeto XElement, um objeto XDocument, uma coleção de objetos XElement ou uma coleção de objetos XDocument.
...<
Necessário. Indica o início de uma propriedade de eixo descendente.
descendant
Necessário. Nome dos nós descendentes a serem acessados, do formulário [prefix:]name
.
Parte | Descrição |
---|---|
prefix |
Opcional. Prefixo de namespace de XML para o nó descendente. Deve ser um namespace de XML global definido usando uma instrução Imports . |
name |
Obrigatórios. Nome local do nó descendente. Confira Nomes de elementos e atributos XML declarados. |
>
Necessário. Indica o final de uma propriedade de eixo descendente.
Valor Retornado
Uma coleção de objetos XElement .
Comentários
Você pode usar uma propriedade de eixo descendente XML para acessar nós descendentes por nome de um objeto XElement ou XDocument ou de uma coleção de objetos XElement ou XDocument. Use a propriedade Value
XML para acessar o valor do primeiro nó descendente na coleção retornada. Para obter mais informações, consulte Propriedade do Valor XML.
O compilador do Visual Basic converte propriedades do eixo descendente em chamadas para o método Descendants.
Namespaces de XML
O nome em uma propriedade de eixo descendente pode usar apenas namespaces de XML declarados globalmente com a instrução Imports
. Ele não pode usar namespaces de XML declarados localmente em literais de elemento XML. Para obter mais informações, confira Instrução Imports (namespace de XML).
Exemplo 1
O exemplo a seguir mostra como acessar o valor do primeiro nó descendente denominado name
e os valores de todos os nós descendentes denominados phone
do objeto contacts
.
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 de XML. Em seguida, ele usa o prefixo do namespace para criar um literal do XML e acessar o valor do primeiro nó filho com o nome qualificado ns:name
.
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