XML 后代轴属性 (Visual Basic)

提供对下列对象或对象集合的子代的访问:XElement 对象、XDocument 对象、XElement 对象集合或 XDocument 对象集合。

object...<descendant>

部件

  • object
    必选。 XElement 对象、XDocument 对象、XElement 对象集合或 XDocument 对象集合。

  • ...<
    必选。 表示子代轴属性的开头。

  • descendant
    必选。 要访问的子代节点的名称,其形式为 [prefix:]name。

    组成部分

    说明

    prefix

    可选。 子代节点的 XML 命名空间前缀。 必须是使用 Imports 语句定义的全局 XML 命名空间。

    name

    必选。 子代节点的本地名称。 请参见 已声明的 XML 元素和特性的名称 (Visual Basic)

  • >
    必选。 表示子代轴属性的结尾。

返回值

XElement 对象的集合。

备注

使用 XML 子代轴属性可以按名称访问 XElementXDocument 对象,或 XElementXDocument 对象集合的子代节点。 使用 XML Value 属性可以访问所返回的集合中第一个子代节点的值。 有关更多信息,请参见 XML 值属性 (Visual Basic)

Visual Basic 编译器将子代轴属性转换为对 Descendants 方法的调用。

XML 命名空间

子代轴属性中的名称只能使用通过 Imports 语句进行全局声明的 XML 命名空间。 不能使用在 XML 元素文本中局部声明的 XML 命名空间。 有关更多信息,请参见 Imports 语句(XML 命名空间)

示例

下面的示例演示如何访问 contacts 对象的第一个名为 name 的子代节点的值,以及所有名为 phone 的子代节点的值。

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

Console.WriteLine("Name: " & contacts...<name>.Value)

Dim homePhone = From phone In contacts...<phone> 
                Select phone.Value

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

这段代码将显示以下文本:

Name: Patrick Hines

Home Phone = 206-555-0144

下面的示例将 ns 声明为 XML 命名空间前缀。 然后,使用该命名空间前缀创建 XML 文本并访问第一个具有限定名 ns:name 的子节点的值。

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

Class TestClass2

    Shared Sub TestPrefix()
        Dim contacts = 
            <ns:contacts>
                <ns:contact>
                    <ns:name>Patrick Hines</ns:name>
                </ns:contact>
            </ns:contacts>

        Console.WriteLine("Name: " & contacts...<ns:name>.Value)
    End Sub

End Class

这段代码将显示以下文本:

Name: Patrick Hines

请参见

参考

XElement

概念

已声明的 XML 元素和特性的名称 (Visual Basic)

其他资源

XML 轴属性 (Visual Basic)

XML 文本 (Visual Basic)

在 Visual Basic 中创建 XML