Queryable.ElementAtOrDefault 메서드

정의

오버로드

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

시퀀스에서 지정된 인덱스의 요소를 반환하거나, 인덱스가 범위를 벗어나면 기본 값을 반환합니다.

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

시퀀스에서 지정된 인덱스의 요소를 반환하거나, 인덱스가 범위를 벗어나면 기본 값을 반환합니다.

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

시퀀스에서 지정된 인덱스의 요소를 반환하거나, 인덱스가 범위를 벗어나면 기본 값을 반환합니다.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource ElementAtOrDefault(System::Linq::IQueryable<TSource> ^ source, Index index);
public static TSource? ElementAtOrDefault<TSource> (this System.Linq.IQueryable<TSource> source, Index index);
static member ElementAtOrDefault : System.Linq.IQueryable<'Source> * Index -> 'Source
<Extension()>
Public Function ElementAtOrDefault(Of TSource) (source As IQueryable(Of TSource), index As Index) As TSource

형식 매개 변수

TSource

source 요소의 형식입니다.

매개 변수

source
IQueryable<TSource>

요소를 반환할 IQueryable<T>입니다.

index
Index

검색할 요소의 인덱스로, 시작 또는 끝에서 가져옵니다.

반환

TSource

default if index is outside the bounds of the source sequence; otherwise, the element at the specified position in the source sequence.

예외

source이(가) null인 경우

적용 대상

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

시퀀스에서 지정된 인덱스의 요소를 반환하거나, 인덱스가 범위를 벗어나면 기본 값을 반환합니다.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource ElementAtOrDefault(System::Linq::IQueryable<TSource> ^ source, int index);
public static TSource ElementAtOrDefault<TSource> (this System.Linq.IQueryable<TSource> source, int index);
public static TSource? ElementAtOrDefault<TSource> (this System.Linq.IQueryable<TSource> source, int index);
static member ElementAtOrDefault : System.Linq.IQueryable<'Source> * int -> 'Source
<Extension()>
Public Function ElementAtOrDefault(Of TSource) (source As IQueryable(Of TSource), index As Integer) As TSource

형식 매개 변수

TSource

source 요소의 형식입니다.

매개 변수

source
IQueryable<TSource>

요소를 반환할 IQueryable<T>입니다.

index
Int32

검색할 요소의 0부터 시작하는 인덱스입니다.

반환

TSource

indexsource의 범위를 벗어나면 default(TSource)이고, 그렇지 않으면 source에서 지정된 위치에 있는 요소입니다.

예외

source이(가) null인 경우

예제

다음 코드 예제에서는 ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32)을 사용하는 방법을 보여 줍니다. 이 예제에서는 소스 시퀀스의 범위를 벗어난 값을 index 사용합니다.

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]'.
*/
Dim names() As String = {"Hartono, Tommy", "Adams, Terry", _
                   "Andersen, Henriette Thaulow", _
                   "Hedlund, Magnus", "Ito, Shu"}

Dim index As Integer = 20

Dim name As String = names.AsQueryable().ElementAtOrDefault(index)

MsgBox(String.Format("The name at index {0} is '{1}'.", _
    index, IIf(String.IsNullOrEmpty(name), "[NONE AT THIS INDEX]", name)))

' This code produces the following output:
'
' The name at index 20 is '[NONE AT THIS INDEX]'.

설명

메서드는 ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) 생성된 제네릭 메서드로 자신을 호출 ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) 하는 것을 나타내는 메서드를 생성 MethodCallExpression 합니다. 그런 다음 매개 변수의 IQueryProvider Execute<TResult>(Expression) 속성으로 표현되는 메서드에 Provider 전달 MethodCallExpression 합니다source.

호출 ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) 을 나타내는 식 트리를 실행한 결과로 발생하는 쿼리 동작은 매개 변수 형식 source 의 구현에 따라 달라집니다. 예상되는 동작은 항목이 위치 index source``default(TSource) 또는 범위를 벗어나는 경우 index 를 반환하는 source것입니다.

적용 대상