다음을 통해 공유


Queryable.First 메서드

정의

시퀀스의 첫 번째 요소를 반환합니다.

오버로드

First<TSource>(IQueryable<TSource>)

시퀀스의 첫 번째 요소를 반환합니다.

First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)

시퀀스에서 지정된 조건에 맞는 첫 번째 요소를 반환합니다.

First<TSource>(IQueryable<TSource>)

Source:
Queryable.cs
Source:
Queryable.cs
Source:
Queryable.cs

시퀀스의 첫 번째 요소를 반환합니다.

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

형식 매개 변수

TSource

source 요소의 형식입니다.

매개 변수

source
IQueryable<TSource>

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

반환

TSource

source의 첫 번째 요소입니다.

예외

source이(가) null인 경우

소스 시퀀스가 비어 있는 경우

예제

다음 코드 예제에서는 를 사용하여 First<TSource>(IQueryable<TSource>) 시퀀스의 첫 번째 요소를 반환하는 방법을 보여 줍니다.

int[] numbers = { 9, 34, 65, 92, 87, 435, 3, 54,
                    83, 23, 87, 435, 67, 12, 19 };

int first = numbers.AsQueryable().First();

Console.WriteLine(first);

/*
    This code produces the following output:

    9
*/
Dim numbers() As Integer = {9, 34, 65, 92, 87, 435, 3, 54, _
                    83, 23, 87, 435, 67, 12, 19}

Dim first As Integer = numbers.AsQueryable().First()

MsgBox(first)

' This code produces the following output:
'
' 9

설명

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

호출 First<TSource>(IQueryable<TSource>) 을 나타내는 식 트리를 실행한 결과로 발생하는 쿼리 동작은 매개 변수 형식 source 의 구현에 따라 달라집니다. 예상되는 동작은 의 source첫 번째 요소를 반환하는 것입니다.

적용 대상

First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)

Source:
Queryable.cs
Source:
Queryable.cs
Source:
Queryable.cs

시퀀스에서 지정된 조건에 맞는 첫 번째 요소를 반환합니다.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource First(System::Linq::IQueryable<TSource> ^ source, System::Linq::Expressions::Expression<Func<TSource, bool> ^> ^ predicate);
public static TSource First<TSource> (this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,bool>> predicate);
static member First : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, bool>> -> 'Source
<Extension()>
Public Function First(Of TSource) (source As IQueryable(Of TSource), predicate As Expression(Of Func(Of TSource, Boolean))) As TSource

형식 매개 변수

TSource

source 요소의 형식입니다.

매개 변수

source
IQueryable<TSource>

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

predicate
Expression<Func<TSource,Boolean>>

각 요소를 조건에 대해 테스트하는 함수입니다.

반환

TSource

source에서 predicate의 테스트를 통과하는 첫 번째 요소입니다.

예외

source 또는 predicatenull인 경우

predicate의 조건을 충족하는 요소가 없는 경우

또는

소스 시퀀스가 비어 있는 경우

예제

다음 코드 예제에서는 를 사용하여 First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) 조건을 충족하는 시퀀스의 첫 번째 요소를 반환하는 방법을 보여 줍니다.

int[] numbers = { 9, 34, 65, 92, 87, 435, 3, 54,
                  83, 23, 87, 435, 67, 12, 19 };

// Get the first number in the array that is greater than 80.
int first = numbers.AsQueryable().First(number => number > 80);

Console.WriteLine(first);

/*
    This code produces the following output:

    92
*/
Dim numbers() As Integer = {9, 34, 65, 92, 87, 435, 3, 54, _
                  83, 23, 87, 435, 67, 12, 19}

' Get the first number in the array that is greater than 80.
Dim first As Integer = numbers.AsQueryable().First(Function(number) number > 80)

MsgBox(first)

' This code produces the following output:
'
' 92

설명

이 메서드에는 형식 인수가 형식 중 하나인 형식 Expression<TDelegate> 의 매개 변수가 Func<T,TResult> 하나 이상 있습니다. 이러한 매개 변수의 경우 람다 식을 전달할 수 있으며 로 컴파일됩니다 Expression<TDelegate>.

메서드는 First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)MethodCallExpression 생성된 제네릭 메서드로 자신을 호출 First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) 하는 을 생성합니다. 그런 다음 을 MethodCallExpression 매개 변수의 Execute<TResult>(Expression) 속성으로 나타내는 ProviderIQueryProvider 메서드에 source 전달합니다.

호출 First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) 을 나타내는 식 트리를 실행한 결과로 발생하는 쿼리 동작은 매개 변수 형식 source 의 구현에 따라 달라집니다. 예상되는 동작은 에서 지정predicate한 조건을 충족하는 의 첫 번째 요소를 source 반환하는 것입니다.

적용 대상