GetXmlNamespace – operátor (Visual Basic)
XNamespace Získá objekt, který odpovídá zadané předponě oboru názvů XML.
Syntaxe
GetXmlNamespace(xmlNamespacePrefix)
Součástky
xmlNamespacePrefix
Volitelné. Řetězec, který identifikuje předponu oboru názvů XML. Pokud je zadán, musí být tento řetězec platným identifikátorem XML. Další informace naleznete v tématu Názvy deklarovaných elementů XML a atributů. Pokud není zadána žádná předpona, vrátí se výchozí obor názvů. Pokud není zadán žádný výchozí obor názvů, vrátí se prázdný obor názvů.
Návratová hodnota
Objekt XNamespace , který odpovídá předponě oboru názvů XML.
Poznámky
Operátor GetXmlNamespace
získá XNamespace objekt, který odpovídá předponě xmlNamespacePrefix
oboru názvů XML .
Předpony oboru názvů XML můžete použít přímo ve vlastnostech literálů XML a osy XML. Před použitím v kódu však musíte pomocí operátoru GetXmlNamespace
převést předponu oboru názvů na XNamespace objekt. K objektu XNamespace můžete připojit nekvalifikovaný název elementu, abyste získali plně kvalifikovaný XName objekt, který mnoho metod LINQ to XML vyžaduje.
Příklad
Následující příklad naimportuje ns
jako předponu oboru názvů XML. Potom použije předponu oboru názvů k vytvoření literálu XML a přístup k prvnímu podřízeného uzlu, který má kvalifikovaný název ns:phone
. Potom tento podřízený uzel ShowName
předá podprogramu, který pomocí operátoru GetXmlNamespace
vytvoří kvalifikovaný název. Podprogram ShowName
pak předá kvalifikovaný název Ancestors metodě pro získání nadřazeného ns:contact
uzlu.
' 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
Při volání TestGetXmlNamespace.RunSample()
se zobrazí pole se zprávou, které obsahuje následující text:
Name: Patrick Hines