GetXmlNamespace 演算子 (Visual Basic)
指定した XML 名前空間プレフィックスに対応する XNamespace オブジェクトを取得します。
構文
GetXmlNamespace(xmlNamespacePrefix)
指定項目
xmlNamespacePrefix
省略可能。 XML 名前空間プレフィックスを識別する文字列です。 指定する場合、文字列は有効な XML 識別子である必要があります。 詳細については、「宣言する XML 要素と属性の名前」を参照してください。 プレフィックスが指定されていない場合は、既定の名前空間が返されます。 既定の名前空間が指定されていない場合は、空の名前空間が返されます。
戻り値
XML 名前空間プレフィックスに対応する XNamespace オブジェクト。
Remarks
GetXmlNamespace
演算子は、XML 名前空間プレフィックス xmlNamespacePrefix
に対応する XNamespace オブジェクトを取得します。
XML 名前空間プレフィックスは、XML リテラルと XML 軸プロパティで直接使用できます。 ただし、コードで名前空間プレフィックスを使用する前に、GetXmlNamespace
演算子を使用して、それを XNamespace オブジェクトに変換しておく必要があります。 XNamespace オブジェクトに非修飾要素名を追加して、多くの LINQ to XML メソッドで必要となる完全修飾 XName オブジェクトを取得できます。
例
次の例では、名前空間プレフィックスとして ns
をインポートしています。 その後、この名前空間のプレフィックスを使用して XML リテラルを作成し、修飾名が ns:phone
である最初の子ノードにアクセスします。 次に、その子ノードを ShowName
サブルーチンに渡します。これにより、GetXmlNamespace
演算子を使用して修飾名が作成されます。 次に、ShowName
サブルーチンが修飾名を Ancestors メソッドに渡して、親の 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
TestGetXmlNamespace.RunSample()
を呼び出すと、次のテキストを含むメッセージ ボックスが表示されます。
Name: Patrick Hines
関連項目
.NET