GetXmlNamespace (Operador) (Visual Basic)

Obtiene el objeto XNamespace que corresponde al prefijo de espacio de nombres XML especificado.

GetXmlNamespace(xmlNamespacePrefix)

Partes

  • xmlNamespacePrefix
    Opcional. Cadena que identifica el prefijo de espacio de nombres XML. Si se proporciona, esta cadena debe ser un identificador XML válido. Para obtener más información, consulte Nombres de atributos y elementos XML declarados (Visual Basic). Si no se especifica ningún prefijo, se devuelve el espacio de nombres predeterminado. Si no se especifica ningún espacio de nombres predeterminado, se devuelve el espacio de nombres vacío.

Valor devuelto

Objeto XNamespace que corresponde al prefijo de espacio de nombres XML.

Comentarios

El operador GetXmlNamespace obtiene el objeto XNamespace que corresponde al prefijo de espacio de nombres XML xmlNamespacePrefix.

Los prefijos de espacio de nombres XML pueden usarse directamente en los literales XML y propiedades de eje XML. Sin embargo, se debe usar el operador GetXmlNamespace para convertir un prefijo de espacio de nombres en un objeto XNamespace antes de usarlo en el código. Se puede anexar un nombre de elemento incompleto a un objeto XNamespace para obtener un objeto XName completo, que muchos métodos de LINQ to XML requieren.

Ejemplo

En el ejemplo siguiente se importa ns como 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 que tiene el nombre completo ns:phone. Después, se pasa ese nodo secundario a la subrutina ShowName, que construye un nombre completo mediante el operador GetXmlNamespace. La subrutina ShowName pasa el nombre completo al método Ancestors para obtener el nodo ns:contact primario.

' Place Imports statements at the top of your program.  
Imports <xmlns:ns="http://SomeNamespace">

Module GetXmlNamespaceSample

    Sub RunSample()

        ' Create test by using a global XML namespace prefix. 

        Dim contact = 
            <ns:contact>
                <ns:name>Patrick Hines</ns:name>
                <ns:phone ns:type="home">206-555-0144</ns:phone>
                <ns:phone ns:type="work">425-555-0145</ns:phone>
            </ns:contact>

        ShowName(contact.<ns:phone>(0))
    End Sub

    Sub ShowName(ByVal phone As XElement)
        Dim qualifiedName = GetXmlNamespace(ns) + "contact"
        Dim contact = phone.Ancestors(qualifiedName)(0)
        Console.WriteLine("Name: " & contact.<ns:name>.Value)
    End Sub

End Module

Al llamar a TestGetXmlNamespace.RunSample(), se muestra un cuadro de mensaje con el texto siguiente:

Name: Patrick Hines

Vea también

Referencia

Imports (Instrucción, Espacio de nombres XML)

Otros recursos

Obtener acceso a XML en Visual Basic