Bagikan melalui


Queryable.First Metode

Definisi

Mengembalikan elemen pertama dari urutan.

Overload

Nama Deskripsi
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 yang ditentukan.

First<TSource>(IQueryable<TSource>)

Sumber:
Queryable.cs
Sumber:
Queryable.cs
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);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
public static TSource First<TSource>(this System.Linq.IQueryable<TSource> source);
static member First : System.Linq.IQueryable<'Source> -> 'Source
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
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.

Atribut

Pengecualian

source adalah 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 yang diwakili IQueryProvider 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 mengembalikan elemen pertama di source.

Berlaku untuk

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

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

Mengembalikan elemen pertama dari urutan yang memenuhi kondisi yang ditentukan.

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);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
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
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
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 kondisi.

Mengembalikan

TSource

Elemen pertama dalam source yang lulus tes di predicate.

Atribut

Pengecualian

source atau predicate adalah null.

Tidak ada elemen yang memenuhi kondisi di 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 yang diwakili IQueryProvider 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