Opérateur GetXmlNamespace (Visual Basic)
Obtient l’objet XNamespace qui correspond au préfixe d’espace de noms XML spécifié.
Syntaxe
GetXmlNamespace(xmlNamespacePrefix)
Éléments
xmlNamespacePrefix
Facultatif. Chaîne qui identifie le préfixe d’espace de noms XML. Si elle est fournie, cette chaîne doit être un identificateur XML valide. Pour plus d’informations, consultez Noms des attributs et des éléments XML déclarés. Si aucun préfixe n’est spécifié, l’espace de noms par défaut est retourné. Si aucun espace de noms par défaut n’est spécifié, l’espace de noms vide est retourné.
Valeur renvoyée
Objet XNamespace qui correspond au préfixe d’espace de noms XML.
Notes
L’opérateur GetXmlNamespace
obtient l’objet XNamespace qui correspond au préfixe xmlNamespacePrefix
d’espace de noms XML.
Vous pouvez utiliser des préfixes d’espace de noms XML directement dans des littéraux XML et des propriétés d’axe XML. Toutefois, vous devez utiliser l’opérateur GetXmlNamespace
pour convertir un préfixe d’espace de noms en objet XNamespace avant de pouvoir l’utiliser dans votre code. Vous pouvez ajouter un nom d’élément non qualifié à un objet XNamespace pour obtenir un objet complet XName, que de nombreuses méthodes LINQ à XML nécessitent.
Exemple
L’exemple suivant importe ns
en tant que préfixe d’espace de noms XML. Il utilise ensuite le préfixe de l'espace de noms pour créer un littéral XML et accéder au premier nœud enfant portant le nom qualifié ns:phone
. Il transmet ensuite ce nœud enfant à la sous-routine ShowName
, qui crée un nom qualifié à l’aide de l’opérateur GetXmlNamespace
. La sous-routine ShowName
transmet ensuite le nom qualifié à la méthode Ancestors pour obtenir le nœud parent 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
Lorsque vous appelez TestGetXmlNamespace.RunSample()
, il affiche une zone de message qui contient le texte suivant :
Name: Patrick Hines