GetXmlNamespace — Operator (Visual Basic)

XNamespace Pobiera obiekt odpowiadający określonemu prefiksowi przestrzeni nazw XML.

Składnia

GetXmlNamespace(xmlNamespacePrefix)

generatora

xmlNamespacePrefix Opcjonalne. Ciąg identyfikujący prefiks przestrzeni nazw XML. Jeśli zostanie podany, ten ciąg musi być prawidłowym identyfikatorem XML. Aby uzyskać więcej informacji, zobacz Nazwy zadeklarowanych elementów XML i atrybutów. Jeśli nie określono żadnego prefiksu, zwracana jest domyślna przestrzeń nazw. Jeśli nie określono domyślnej przestrzeni nazw, zwracana jest pusta przestrzeń nazw.

Wartość zwracana

XNamespace Obiekt odpowiadający prefiksowi przestrzeni nazw XML.

Uwagi

Operator GetXmlNamespace pobiera XNamespace obiekt odpowiadający prefiksowi xmlNamespacePrefixprzestrzeni nazw XML .

Prefiksy przestrzeni nazw XML można używać bezpośrednio w literałach XML i właściwościach osi XML. Należy jednak użyć GetXmlNamespace operatora , aby przekonwertować prefiks przestrzeni nazw na XNamespace obiekt, zanim będzie można go użyć w kodzie. Możesz dołączyć niekwalifikowaną nazwę elementu do XNamespace obiektu, aby uzyskać w pełni kwalifikowany XName obiekt, którego wymaga wiele metod LINQ to XML.

Przykład

Poniższy przykład importuje ns jako prefiks przestrzeni nazw XML. Następnie używa prefiksu przestrzeni nazw, aby utworzyć literał XML i uzyskać dostęp do pierwszego węzła podrzędnego, który ma kwalifikowaną nazwę ns:phone. Następnie przekazuje ten węzeł podrzędny do ShowName podroutyny, która konstruuje kwalifikowaną nazwę przy użyciu GetXmlNamespace operatora . Następnie ShowName podprokutyna przekazuje kwalifikowaną nazwę do Ancestors metody w celu pobrania węzła nadrzędnego 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

Po wywołaniu TestGetXmlNamespace.RunSample()metody wyświetla ono pole komunikatu zawierające następujący tekst:

Name: Patrick Hines

Zobacz też