Свойство-индексатор расширения (Visual Basic)
Предоставляет доступ к отдельным элементам в коллекции.
object(index)
Части
Термин |
Определение |
object |
Обязательный. Коллекция, доступная для запросов. Это коллекция, которая реализует IEnumerable<T> или IQueryable<T>. |
( |
Обязательный. Обозначает начало свойства индексатора. |
index |
Обязательный. Целочисленное выражение, задающее позицию элемента коллекции (индексация ведется от нуля). |
) |
Обязательный. Обозначает конец свойства индексатора. |
Возвращаемое значение
Возвращает объект из указанного места в коллекции, или Nothing, если индекс находится вне допустимого диапазона.
Заметки
Для доступа к отдельным элементам в коллекции можно использовать свойство индексатора расширения. Это свойство индексатора обычно используются на выходе свойства XML-оси. Свойства оси дочерних XML и XML-потомков возвращают коллекцию объектов XElement или значение атрибута.
Для вызова метода компилятор vbprvb преобразует свойства индексатора расширения. В отличие от индексатора массива методElementAtOrDefault возвращает Nothing, если индекс находится вне диапазона. Это полезно, когда не удается легко определить число элементов в коллекции.
Это свойство индексатора напоминает свойство для коллекций, которые реализуют IEnumerable<T> или IQueryable<T>: оно используется, только если в коллекции нет индексатора или свойства по умолчанию.
Для доступа к значению первого элемента в коллекции объектов XElement или XAttribute, можно использовать XML-свойство Value. Дополнительные сведения см. в разделе Свойство значения XML (Visual Basic).
Пример
В следующем примере показано использование индексатора расширения для доступа ко второму дочернему узлу в коллекции объектов XElement. Доступ к коллекции осуществляется с помощью свойства дочерней оси, которое возвращает все дочерние элементы с именем phone в объекте contact.
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
См. также
Ссылки
Свойство значения XML (Visual Basic)