Condividi tramite


Proprietà Axis discendente XML (Visual Basic)

Fornisce l'accesso ai discendenti degli oggetti seguenti: un XElement oggetto, un XDocument oggetto, una raccolta di XElement oggetti o una raccolta di XDocument oggetti.

Sintassi

object...<descendant>

Parti

object Obbligatorio. Oggetto XElement , XDocument un oggetto, una raccolta di XElement oggetti o una raccolta di XDocument oggetti.

...< Obbligatorio. Indica l'inizio di una proprietà dell'asse discendente.

descendant Obbligatorio. Nome dei nodi discendenti a cui accedere, del formato [prefix:]name.

Parte Descrizione
prefix Opzionale. Prefisso dello spazio dei nomi XML per il nodo discendente. Deve essere uno spazio dei nomi XML globale definito tramite un'istruzione Imports .
name Obbligatorio. Nome locale del nodo discendente. Vedere Nomi di elementi e attributi XML dichiarati.

> Obbligatorio. Indica la fine di una proprietà dell'asse discendente.

Valore restituito

Raccolta di XElement oggetti.

Osservazioni:

È possibile utilizzare una proprietà dell'asse discendente XML per accedere ai nodi discendenti per nome da un XElement oggetto o XDocument o da una raccolta di XElement oggetti o XDocument . Utilizzare la proprietà XML Value per accedere al valore del primo nodo discendente nella raccolta restituita. Per altre informazioni, vedere Proprietà valore XML.

Il compilatore Visual Basic converte le proprietà dell'asse discendente in chiamate al Descendants metodo .

Spazi dei nomi XML

Il nome in una proprietà dell'asse discendente può usare solo gli spazi dei nomi XML dichiarati a livello globale con l'istruzione Imports . Non può usare spazi dei nomi XML dichiarati localmente all'interno di valori letterali elemento XML. Per altre informazioni, vedere Istruzione Imports (spazio dei nomi XML).

Esempio 1

Nell'esempio seguente viene illustrato come accedere al valore del primo nodo discendente denominato name e ai valori di tutti i nodi discendenti denominati phone dall'oggetto 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))

Questo codice visualizza il testo seguente:

Name: Patrick Hines

Home Phone = 206-555-0144

Esempio 2

Nell'esempio seguente viene ns dichiarato come prefisso dello spazio dei nomi XML. Usa quindi il prefisso dello spazio dei nomi per creare un valore letterale XML e accedere al valore del primo nodo figlio con il nome ns:namecompleto .

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

Questo codice visualizza il testo seguente:

Name: Patrick Hines

Vedere anche