Queryable.First Metoda

Definice

Vrátí první prvek sekvence.Returns the first element of a sequence.

Přetížení

First<TSource>(IQueryable<TSource>)

Vrátí první prvek sekvence.Returns the first element of a sequence.

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

Vrátí první prvek sekvence, který splňuje zadanou podmínku.Returns the first element of a sequence that satisfies a specified condition.

First<TSource>(IQueryable<TSource>)

Vrátí první prvek sekvence.Returns the first element of a sequence.

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

Parametry typu

TSource

Typ prvků source .The type of the elements of source.

Parametry

source
IQueryable<TSource>

IQueryable<T>Pro vrácení prvního prvku.The IQueryable<T> to return the first element of.

Návraty

TSource

První prvek v source .The first element in source.

Výjimky

source je null.source is null.

Zdrojová sekvence je prázdná.The source sequence is empty.

Příklady

Následující příklad kódu ukazuje, jak použít First<TSource>(IQueryable<TSource>) k vrácení prvního prvku v sekvenci.The following code example demonstrates how to use First<TSource>(IQueryable<TSource>) to return the first element in a sequence.

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

Poznámky

First<TSource>(IQueryable<TSource>)Metoda generuje MethodCallExpression , který reprezentuje volání First<TSource>(IQueryable<TSource>) sebe sama jako vytvořenou obecnou metodu.The First<TSource>(IQueryable<TSource>) method generates a MethodCallExpression that represents calling First<TSource>(IQueryable<TSource>) itself as a constructed generic method. Poté předá MethodCallExpression Execute<TResult>(Expression) metodě IQueryProvider reprezentované Provider vlastností source parametru.It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

Chování dotazu, k němuž dojde v důsledku provádění stromu výrazu, který představuje volání, First<TSource>(IQueryable<TSource>) závisí na implementaci typu source parametru.The query behavior that occurs as a result of executing an expression tree that represents calling First<TSource>(IQueryable<TSource>) depends on the implementation of the type of the source parameter. Očekávané chování je, že vrátí první prvek v source .The expected behavior is that it returns the first element in source.

Platí pro

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

Vrátí první prvek sekvence, který splňuje zadanou podmínku.Returns the first element of a sequence that satisfies a specified condition.

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

Parametry typu

TSource

Typ prvků source .The type of the elements of source.

Parametry

source
IQueryable<TSource>

IQueryable<T>A vrátí prvek z.An IQueryable<T> to return an element from.

predicate
Expression<Func<TSource,Boolean>>

Funkce pro otestování každého prvku podmínky.A function to test each element for a condition.

Návraty

TSource

První prvek v source , který projde testem v predicate .The first element in source that passes the test in predicate.

Výjimky

source nebo predicate je null .source or predicate is null.

Žádný element nesplňuje podmínky v predicate .No element satisfies the condition in predicate.

-nebo--or- Zdrojová sekvence je prázdná.The source sequence is empty.

Příklady

Následující příklad kódu ukazuje, jak použít First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) k vrácení prvního prvku sekvence, která splňuje podmínku.The following code example demonstrates how to use First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) to return the first element of a sequence that satisfies a condition.

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

Poznámky

Tato metoda má alespoň jeden parametr typu, Expression<TDelegate> jehož argumentem typu je jeden z Func<T,TResult> typů.This method has at least one parameter of type Expression<TDelegate> whose type argument is one of the Func<T,TResult> types. Pro tyto parametry můžete předat výraz lambda a bude zkompilován do Expression<TDelegate> .For these parameters, you can pass in a lambda expression and it will be compiled to an Expression<TDelegate>.

First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)Metoda generuje MethodCallExpression , který reprezentuje volání First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) sebe sama jako vytvořenou obecnou metodu.The First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) method generates a MethodCallExpression that represents calling First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) itself as a constructed generic method. Poté předá MethodCallExpression Execute<TResult>(Expression) metodě IQueryProvider reprezentované Provider vlastností source parametru.It then passes the MethodCallExpression to the Execute<TResult>(Expression) method of the IQueryProvider represented by the Provider property of the source parameter.

Chování dotazu, k němuž dojde v důsledku provádění stromu výrazu, který představuje volání, First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) závisí na implementaci typu source parametru.The query behavior that occurs as a result of executing an expression tree that represents calling First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) depends on the implementation of the type of the source parameter. Očekávané chování je, že vrátí první prvek v source , který splňuje podmínku určenou parametrem predicate .The expected behavior is that it returns the first element in source that satisfies the condition specified by predicate.

Platí pro