Compartir a través de


Operador GetXmlNamespace (Visual Basic)

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

Sintaxis

GetXmlNamespace(xmlNamespacePrefix)

Partes

xmlNamespacePrefix opcional. Cadena que identifica el prefijo del espacio de nombres XML. Si se proporciona, esta cadena debe ser un identificador XML válido. Para obtener más información, vea Nombres de atributos y elementos XML declarados. 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 del espacio de nombres XML.

Observaciones

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

Puede usar prefijos de espacio de nombres XML directamente en literales XML y propiedades del eje XML. Sin embargo, debe usar el GetXmlNamespace operador para convertir un prefijo de espacio de nombres en un XNamespace objeto antes de poder usarlo en el código. Puede anexar un nombre de elemento no completo a un XNamespace objeto para obtener un objeto completo XName , que muchos métodos LINQ to XML requieren.

Ejemplo

En el ejemplo siguiente se importa ns como prefijo de espacio de nombres XML. A continuación, usa el prefijo del espacio de nombres para crear un literal XML y acceder al primer nodo secundario que tiene el nombre ns:phonecompleto . A continuación, pasa ese nodo secundario a la ShowName subrutina, que construye un nombre completo mediante el GetXmlNamespace operador . A continuación, la ShowName subrutina pasa el nombre completo al Ancestors método para obtener el nodo primario ns:contact .

' 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

Cuando se llama a TestGetXmlNamespace.RunSample(), muestra un cuadro de mensaje que contiene el texto siguiente:

Name: Patrick Hines

Consulte también