次の方法で共有


XML 子軸プロパティ (Visual Basic)

XElement オブジェクト、XDocument オブジェクト、XElement オブジェクトのコレクション、または XDocument オブジェクトのコレクションのいずれかの子にアクセスできます。

構文

object.<child>

部品

任期 定義
object 必須。 XElement オブジェクト、XDocument オブジェクト、XElement オブジェクトのコレクション、またはXDocument オブジェクトのコレクション。
.< 必須。 子軸プロパティの先頭を示します。
child 必須。 アクセスする子ノードの名前 。フォーム [prefix:]name

- Prefix -随意。 子ノードの XML 名前空間プレフィックス。 Imports ステートメントで定義されたグローバル XML 名前空間である必要があります。
- Name -必須。 ローカルの子ノード名。 「宣言された XML 要素と属性の名前」を参照してください。
> 必須。 子軸プロパティの末尾を示します。

戻り値

XElement オブジェクトのコレクション。

注釈

XML 子軸プロパティを使用すると、 XElement または XDocument オブジェクトから、または XElement または XDocument オブジェクトのコレクションから、名前によって子ノードにアクセスできます。 XML Value プロパティを使用して、返されたコレクション内の最初の子ノードの値にアクセスします。 詳細については、「 XML 値プロパティ」を参照してください。

Visual Basic コンパイラは、子軸のプロパティを Elements メソッドの呼び出しに変換します。

XML 名前空間

子軸プロパティの名前では、 Imports ステートメントでグローバルに宣言された XML 名前空間プレフィックスのみを使用できます。 XML 要素リテラル内でローカルに宣言された XML 名前空間プレフィックスを使用することはできません。 詳細については、「 Imports ステートメント (XML 名前空間)」を参照してください。

例 1

次の例は、contact オブジェクトから phone という名前の子ノードにアクセスする方法を示しています。

Dim contact As XElement = 
    <contact>
        <name>Patrick Hines</name>
        <phone type="home">206-555-0144</phone>
        <phone type="work">425-555-0145</phone>
    </contact>

Dim homePhone = From hp In contact.<phone> 
                Where contact.<phone>.@type = "home" 
                Select hp

Console.WriteLine("Home Phone = {0}", homePhone(0).Value)

このコードでは、次のテキストが表示されます。

Home Phone = 206-555-0144

例 2

次の例は、contacts オブジェクトのcontact子軸プロパティによって返されるコレクションから、phoneという名前の子ノードにアクセスする方法を示しています。

Dim contacts As XElement = 
    <contacts>
        <contact>
            <name>Patrick Hines</name>
            <phone type="home">206-555-0144</phone>
        </contact>
        <contact>
            <name>Lance Tucker</name>
            <phone type="work">425-555-0145</phone>
        </contact>
    </contacts>

Dim homePhone = From contact In contacts.<contact> 
                Where contact.<phone>.@type = "home" 
                Select contact.<phone>

Console.WriteLine("Home Phone = {0}", homePhone(0).Value)

このコードでは、次のテキストが表示されます。

Home Phone = 206-555-0144

例 3

次の例では、 ns を XML 名前空間プレフィックスとして宣言します。 その後、名前空間のプレフィックスを使用して XML リテラルを作成し、修飾名 ns:nameを持つ最初の子ノードにアクセスします。

Imports <xmlns:ns = "http://SomeNamespace"> 
 
Class TestClass4

    Shared Sub TestPrefix()
        Dim contact = <ns:contact>
                        <ns:name>Patrick Hines</ns:name>
                      </ns:contact>
        Console.WriteLine(contact.<ns:name>.Value)
    End Sub

End Class

このコードでは、次のテキストが表示されます。

Patrick Hines

こちらも参照ください