扩展索引器属性

更新:2007 年 11 月

提供对集合中各个元素的访问。

object(index)

组成部分

  • object
    必需。可查询的集合。即实现 IEnumerable<T>IQueryable<T> 的集合。

  • (
    必需。表示索引器属性的开头。

  • index
    必需。一个整数表达式,指定集合的元素的位置(从零开始)。

  • )
    必需。表示索引器属性的结尾。

返回值

集合中的指定位置处的对象,如果索引超出范围,则为 Nothing。

备注

使用扩展索引器属性可以访问集合中的各个元素。此索引器属性通常用于 XML 轴属性的输出。XML 子轴属性 (Property) 和 XML 子代轴属性 (Property) 返回 XElement 对象的集合或一个属性 (Attribute) 值。

Visual Basic 编译器将扩展索引器属性转换为对 ElementAtOrDefault 方法的调用。与数组索引器不同,ElementAtOrDefault 方法在索引超出范围时返回 Nothing。如果不便于确定集合中的元素数时,此行为非常有用。

此索引器属性与实现 IEnumerable<T>IQueryable<T> 的集合的扩展属性相似:仅当集合没有索引器或默认属性时才会使用。

若要访问 XElementXAttribute 对象集合中的第一个元素的值,可以使用 XML Value 属性。有关更多信息,请参见 XML 值属性

示例

下面的示例演示如何使用扩展索引器访问 XElement 对象集合中的第二个子节点。该集合是用子轴属性访问的,该属性获取 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>

Console.WriteLine("Second phone number: " & contact.<phone>(1).Value)

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

Second phone number: 425-555-0145

请参见

参考

XElement

XML 值属性

其他资源

XML 轴属性

XML 文本

在 Visual Basic 中创建 XML