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

XElement オブジェクト、XDocument オブジェクト、XElement オブジェクトのコレクション、または XDocument オブジェクトのコレクションのいずれかの子にアクセスできます。Provides access to the children of one of the following: an XElement object, an XDocument object, a collection of XElement objects, or a collection of XDocument objects.

構文Syntax

object.<child>  

指定項目Parts

用語Term 定義Definition
object 必須です。Required. XElement オブジェクト、XDocument オブジェクト、XElement オブジェクトのコレクション、または XDocument オブジェクトのコレクションです。An XElement object, an XDocument object, a collection of XElement objects, or a collection of XDocument objects.
.<.< 必須です。Required. 子軸プロパティの開始を示します。Denotes the start of a child axis property.
child 必須です。Required. アクセスする子ノードの名前です。[prefix:]name の形式で指定します。Name of the child nodes to access, of the form [prefix:]name.

- Prefix - 省略可能。- Prefix - Optional. 子ノードの XML 名前空間プレフィックスです。XML namespace prefix for the child node. Imports ステートメントを使用して定義されているグローバル XML 名前空間を指定する必要があります。Must be a global XML namespace defined with an Imports statement.
- Name - 必須。- Name - Required. ローカル子ノードの名前です。Local child node name. 宣言する XML 要素と属性の名前」を参照してください。See Names of Declared XML Elements and Attributes.
> 必須です。Required. 子軸プロパティの終了を示します。Denotes the end of a child axis property.

戻り値Return Value

XElement オブジェクトのコレクション。A collection of XElement objects.

RemarksRemarks

XML 子軸プロパティを使用すると、XElement オブジェクト、XDocument オブジェクト、XElement オブジェクトのコレクション、または XDocument オブジェクトのコレクションから子ノードに名前でアクセスできます。You can use an XML child axis property to access child nodes by name from an XElement or XDocument object, or from a collection of XElement or XDocument objects. 返されるコレクションの最初の子ノードの値にアクセスするには、XML の Value プロパティを使用します。Use the XML Value property to access the value of the first child node in the returned collection. 詳細については、「XML Value プロパティ」を参照してください。For more information, see XML Value Property.

Visual Basic コンパイラは、子軸プロパティを Elements メソッドの呼び出しに変換します。The Visual Basic compiler converts child axis properties to calls to the Elements method.

XML 名前空間XML Namespaces

子軸プロパティの名前では、Imports ステートメントでグローバルに宣言されている XML 名前空間プレフィックスのみを使用できます。The name in a child axis property can use only XML namespace prefixes declared globally with the Imports statement. XML 要素リテラル内でローカルに宣言されている XML 名前空間プレフィックスは使用できません。It cannot use XML namespace prefixes declared locally within XML element literals. 詳細については、「Imports ステートメント (XML 名前空間)」を参照してください。For more information, see Imports Statement (XML Namespace).

Example

次の例は、contact オブジェクトの phone という名前の子ノードにアクセスする方法を示しています。The following example shows how to access the child nodes named phone from the contact object.

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)

このコードを実行すると、次のテキストが表示されます。This code displays the following text:

Home Phone = 206-555-0144

Example

次の例は、contacts オブジェクトの contact 子軸プロパティによって返されたコレクションの、phone という名前の子ノードにアクセスする方法を示しています。The following example shows how to access the child nodes named phone from the collection returned by the contact child axis property of the contacts object.

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)

このコードを実行すると、次のテキストが表示されます。This code displays the following text:

Home Phone = 206-555-0144

Example

次の例では、ns を名前空間プレフィックスとして宣言します。The following example declares ns as an XML namespace prefix. その後、この名前空間のプレフィックスを使用して XML リテラルを作成し、修飾名 ns:name を持つ最初の子ノードにアクセスします。It then uses the prefix of the namespace to create an XML literal and access the first child node with the qualified name 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

このコードを実行すると、次のテキストが表示されます。This code displays the following text:

Patrick Hines

関連項目See also