-
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 子代轴属性可以按名称访问 XElement 或 XDocument 对象,或 XElement 或 XDocument 对象集合的子代节点。 使用 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