Прочитать на английском

Поделиться через


Queryable.ElementAtOrDefault Метод

Определение

Перегрузки

ElementAtOrDefault<TSource>(IQueryable<TSource>, Index)

Возвращает элемент последовательности по указанному индексу или значение по умолчанию, если индекс вне допустимого диапазона.

ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32)

Возвращает элемент последовательности по указанному индексу или значение по умолчанию, если индекс вне допустимого диапазона.

ElementAtOrDefault<TSource>(IQueryable<TSource>, Index)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Возвращает элемент последовательности по указанному индексу или значение по умолчанию, если индекс вне допустимого диапазона.

C#
public static TSource? ElementAtOrDefault<TSource> (this System.Linq.IQueryable<TSource> source, Index index);

Параметры типа

TSource

Тип элементов source.

Параметры

source
IQueryable<TSource>

Объект IQueryable<T>, из которого требуется возвратить элемент.

index
Index

Индекс извлекаемого элемента, который находится в начале или конце.

Возвращаемое значение

TSource

default Значение , если index находится за пределами source последовательности; в противном случае — элемент в указанной source позиции последовательности.

Исключения

source имеет значение null.

Применяется к

.NET 9 и другие версии
Продукт Версии
.NET 6, 7, 8, 9

ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32)

Исходный код:
Queryable.cs
Исходный код:
Queryable.cs
Исходный код:
Queryable.cs

Возвращает элемент последовательности по указанному индексу или значение по умолчанию, если индекс вне допустимого диапазона.

C#
public static TSource ElementAtOrDefault<TSource> (this System.Linq.IQueryable<TSource> source, int index);
C#
public static TSource? ElementAtOrDefault<TSource> (this System.Linq.IQueryable<TSource> source, int index);

Параметры типа

TSource

Тип элементов source.

Параметры

source
IQueryable<TSource>

Объект IQueryable<T>, из которого требуется возвратить элемент.

index
Int32

Отсчитываемый от нуля индекс извлекаемого элемента.

Возвращаемое значение

TSource

default(TSource) значение , если index находится за пределами sourceграниц ; в противном случае — элемент в указанной позиции в source.

Исключения

source имеет значение null.

Примеры

В следующем примере кода демонстрируется использование метода ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32). В этом примере используется значение для index , которое находится за пределами исходной последовательности.

C#
string[] names = { "Hartono, Tommy", "Adams, Terry",
                   "Andersen, Henriette Thaulow",
                   "Hedlund, Magnus", "Ito, Shu" };

int index = 20;

string name = names.AsQueryable().ElementAtOrDefault(index);

Console.WriteLine(
    "The name chosen at index {0} is '{1}'.",
    index,
    String.IsNullOrEmpty(name) ? "[NONE AT THIS INDEX]" : name);

/*
    This code produces the following output:

    The name chosen at index 20 is '[NONE AT THIS INDEX]'.
*/

Комментарии

Метод ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) создает объект , MethodCallExpression представляющий вызов ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) как сконструированный универсальный метод. Затем он передает MethodCallExpressionExecute<TResult>(Expression) в метод объекта , представленный IQueryProvider свойством Providersource параметра .

Поведение запроса, возникающее в результате выполнения дерева выражений, представляющего вызов ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) , зависит от реализации типа source параметра. Ожидаемое поведение заключается в том, что он возвращает элемент в позиции index в sourceили , default(TSource) если index находится за пределами sourceграниц .

Применяется к

.NET 9 и другие версии
Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1
UWP 10.0