扩展索引器属性 (Visual Basic)
提供对集合中各个元素的访问。
语法
object(index)
组成部分
术语 | 定义 |
---|---|
object |
必需。 可查询集合。 即,实现 IEnumerable<T> 或 IQueryable<T> 的集合。 |
( | 必需。 表示索引器属性的开头。 |
index |
必需。 一个整数表达式,用于指定集合的元素位置。 |
) | 必需。 表示索引器属性的末尾。 |
返回值
集合中指定位置的对象,如果索引超出范围,则为 Nothing
。
注解
可以使用扩展索引器属性访问集合中的单个元素。 此索引器属性通常用于 XML 轴属性的输出。 XML 子轴和 XML 子代轴属性返回 XElement 对象或属性值的集合。
Visual Basic 编译器转换扩展索引器属性,以调用 ElementAtOrDefault
方法。 与数组索引器不同,如果索引超出范围,ElementAtOrDefault
方法将返回 Nothing
。 当无法轻松确定集合中的元素数目时,此行为非常有用。
此索引器属性类似于实现 IEnumerable<T> 或 IQueryable<T> 的集合的扩展属性:仅当集合没有索引器或默认属性时,才使用该属性。
要访问 XElement 或 XAttribute 对象集合中第一个元素的值,可使用 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