Propiedades de eje secundario XML (Visual Basic)
Proporciona el acceso a los elementos secundarios de uno de los siguientes: un objeto XElement, un objeto XDocument, una colección de objetos XElement o una colección de objetos XDocument.
Sintaxis
object.<child>
Partes
Término | Definición |
---|---|
object |
Obligatorio. Un objeto XElement, un objeto XDocument, una colección de objetos XElement o una colección de objetos XDocument. |
.< | Necesario. Denota el inicio de una propiedad de eje secundario. |
child |
Necesario. Nombre de los nodos secundarios para obtener acceso, con el formato [prefix:]name .- Prefix - Opcional. Prefijo de espacio de nombres XML para el nodo secundario. Debe ser un espacio de nombres XML global definido con una instrucción Imports .- Name - Obligatorio. Nombre del nodo secundario local. Consulte Nombres de atributos y elementos XML declarados. |
> | Necesario. Denota el final de una propiedad de eje secundario. |
Valor devuelto
Una colección de objetos XElement.
Comentarios
Puede usar una propiedad de eje secundario XML para tener acceso a los nodos secundarios por nombre desde un objeto XElement o XDocument, o desde una colección de objetos XElement o XDocument. Utilice la propiedad XML Value
para tener acceso al valor del primer nodo secundario de la colección devuelta. Para obtener más información, consulte Value (Propiedad XML).
El compilador de Visual Basic convierte las propiedades de eje secundario en llamadas al método Elements.
Espacios de nombres XML
El nombre de una propiedad de eje secundario puede usar únicamente prefijos de espacios de nombres XML declarados globalmente con la instrucción Imports
. No puede utilizar prefijos de espacio de nombres XML declarados localmente dentro de literales de elemento XML. Para obtener más información, consulte Imports (Instrucción, Espacio de nombres XML).
Ejemplo 1
En el ejemplo siguiente se muestra cómo obtener acceso a los nodos secundarios llamados phone
desde el objeto contact
.
Dim contact As XElement =
<contact>
<name>Patrick Hines</name>
<phone type="home">206-555-0144</phone>
<phone type="work">425-555-0145</phone>
</contact>
Dim homePhone = From hp In contact.<phone>
Where contact.<phone>.@type = "home"
Select hp
Console.WriteLine("Home Phone = {0}", homePhone(0).Value)
Este código muestra el siguiente texto:
Home Phone = 206-555-0144
Ejemplo 2
En el ejemplo siguiente se muestra cómo tener acceso a los nodos secundarios denominados phone
desde la colección devuelta por la propiedad contact
del eje secundario del objeto contacts
.
Dim contacts As XElement =
<contacts>
<contact>
<name>Patrick Hines</name>
<phone type="home">206-555-0144</phone>
</contact>
<contact>
<name>Lance Tucker</name>
<phone type="work">425-555-0145</phone>
</contact>
</contacts>
Dim homePhone = From contact In contacts.<contact>
Where contact.<phone>.@type = "home"
Select contact.<phone>
Console.WriteLine("Home Phone = {0}", homePhone(0).Value)
Este código muestra el siguiente texto:
Home Phone = 206-555-0144
Ejemplo 3
En el ejemplo siguiente se declara ns
como un prefijo de espacio de nombres XML. A continuación, se usa el prefijo del espacio de nombres para crear un literal XML y obtener acceso al primer nodo secundario con el nombre completo ns:name
.
Imports <xmlns:ns = "http://SomeNamespace">
Class TestClass4
Shared Sub TestPrefix()
Dim contact = <ns:contact>
<ns:name>Patrick Hines</ns:name>
</ns:contact>
Console.WriteLine(contact.<ns:name>.Value)
End Sub
End Class
Este código muestra el siguiente texto:
Patrick Hines