Partilhar via


Operador GetXmlNamespace (Visual Basic)

Obtém o XNamespace objeto que corresponde ao prefixo de namespace XML especificado.

Sintaxe

GetXmlNamespace(xmlNamespacePrefix)

Partes

xmlNamespacePrefix Opcional. A cadeia de caracteres que identifica o prefixo do namespace XML. Se fornecida, essa cadeia de caracteres deve ser um identificador XML válido. Para obter mais informações, consulte Nomes de elementos e atributos XML declarados. Se nenhum prefixo for especificado, o namespace padrão será retornado. Se nenhum namespace padrão for especificado, o namespace vazio será retornado.

Devolver Valor

O XNamespace objeto que corresponde ao prefixo do namespace XML.

Observações

O GetXmlNamespace operador obtém o XNamespace objeto que corresponde ao prefixo xmlNamespacePrefixdo namespace XML.

Você pode usar prefixos de namespace XML diretamente em literais XML e propriedades de eixo XML. No entanto, você deve usar o operador para converter um prefixo GetXmlNamespace de namespace em um XNamespace objeto antes de poder usá-lo em seu código. Você pode acrescentar um nome de elemento não qualificado a um XNamespace objeto para obter um objeto totalmente qualificado XName , o que muitos métodos LINQ to XML exigem.

Exemplo

O exemplo a seguir é importado ns como um prefixo de namespace XML. Em seguida, ele usa o prefixo do namespace para criar um literal XML e acessar o primeiro nó filho que tem o nome ns:phonequalificado. Em seguida, ele passa esse nó filho para a ShowName sub-rotina, que constrói um nome qualificado usando o GetXmlNamespace operador. Em ShowName seguida, a sub-rotina passa o nome qualificado para o Ancestors método para obter o nó pai 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

Quando você chama TestGetXmlNamespace.RunSample()o , ele exibe uma caixa de mensagem que contém o seguinte texto:

Name: Patrick Hines

Consulte também