Bagikan melalui


Queryable.First Metode

Definisi

Mengembalikan elemen pertama dari urutan.

Overload

First<TSource>(IQueryable<TSource>)

Mengembalikan elemen pertama dari urutan.

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

Mengembalikan elemen pertama dari urutan yang memenuhi kondisi tertentu.

First<TSource>(IQueryable<TSource>)

Sumber:
Queryable.cs
Sumber:
Queryable.cs
Sumber:
Queryable.cs

Mengembalikan elemen pertama dari urutan.

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

Jenis parameter

TSource

Jenis elemen source.

Parameter

source
IQueryable<TSource>

IQueryable<T> untuk mengembalikan elemen pertama.

Mengembalikan

TSource

Elemen pertama dalam source.

Pengecualian

sourceadalah null.

Urutan sumber kosong.

Contoh

Contoh kode berikut menunjukkan cara menggunakan First<TSource>(IQueryable<TSource>) untuk mengembalikan elemen pertama secara berurutan.

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

Keterangan

Metode ini First<TSource>(IQueryable<TSource>) menghasilkan MethodCallExpression yang mewakili pemanggilan First<TSource>(IQueryable<TSource>) dirinya sebagai metode generik yang dibangun. Kemudian meneruskan MethodCallExpression ke Execute<TResult>(Expression) metode dari yang IQueryProvider diwakili oleh Provider properti source parameter .

Perilaku kueri yang terjadi sebagai akibat dari menjalankan pohon ekspresi yang mewakili panggilan First<TSource>(IQueryable<TSource>) tergantung pada implementasi jenis source parameter. Perilaku yang diharapkan adalah bahwa ia mengembalikan elemen pertama di source.

Berlaku untuk

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

Sumber:
Queryable.cs
Sumber:
Queryable.cs
Sumber:
Queryable.cs

Mengembalikan elemen pertama dari urutan yang memenuhi kondisi tertentu.

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

Jenis parameter

TSource

Jenis elemen source.

Parameter

source
IQueryable<TSource>

Untuk IQueryable<T> mengembalikan elemen dari.

predicate
Expression<Func<TSource,Boolean>>

Fungsi untuk menguji setiap elemen untuk suatu kondisi.

Mengembalikan

TSource

Elemen pertama dalam source yang lulus tes di predicate.

Pengecualian

source atau predicate adalah null.

Tidak ada elemen yang memenuhi kondisi dalam predicate.

-atau-

Urutan sumber kosong.

Contoh

Contoh kode berikut menunjukkan cara menggunakan First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) untuk mengembalikan elemen pertama dari urutan yang memenuhi kondisi.

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

Keterangan

Metode ini memiliki setidaknya satu parameter jenis Expression<TDelegate> yang argumen jenisnya adalah salah satu jenisnya Func<T,TResult> . Untuk parameter ini, Anda dapat meneruskan ekspresi lambda dan akan dikompilasi ke Expression<TDelegate>.

Metode ini First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) menghasilkan MethodCallExpression yang mewakili pemanggilan First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) dirinya sebagai metode generik yang dibangun. Kemudian meneruskan MethodCallExpression ke Execute<TResult>(Expression) metode dari yang IQueryProvider diwakili oleh Provider properti source parameter .

Perilaku kueri yang terjadi sebagai akibat dari menjalankan pohon ekspresi yang mewakili panggilan First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) tergantung pada implementasi jenis source parameter. Perilaku yang diharapkan adalah bahwa ia mengembalikan elemen pertama dalam source yang memenuhi kondisi yang ditentukan oleh predicate.

Berlaku untuk