Comparteix a través de


Queryable.First Método

Definición

Devuelve el primer elemento de una secuencia.

Sobrecargas

First<TSource>(IQueryable<TSource>)

Devuelve el primer elemento de una secuencia.

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

Devuelve el primer elemento de una secuencia que satisface una condición especificada.

First<TSource>(IQueryable<TSource>)

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

Devuelve el primer elemento de una secuencia.

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

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IQueryable<TSource>

IQueryable<T> del que se va a devolver el primer elemento.

Devoluciones

TSource

El primer elemento de source.

Excepciones

source es null.

La secuencia de origen está vacía.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar First<TSource>(IQueryable<TSource>) para devolver el primer elemento de una secuencia.

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

Comentarios

El First<TSource>(IQueryable<TSource>) método genera un MethodCallExpression objeto que representa llamarse First<TSource>(IQueryable<TSource>) a sí mismo como un método genérico construido. A continuación, pasa al MethodCallExpressionExecute<TResult>(Expression) método del IQueryProvider representado por la Provider propiedad del source parámetro .

El comportamiento de la consulta que se produce como resultado de ejecutar un árbol de expresión que representa la llamada First<TSource>(IQueryable<TSource>) depende de la implementación del tipo del source parámetro. El comportamiento esperado es que devuelve el primer elemento de source.

Se aplica a

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

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

Devuelve el primer elemento de una secuencia que satisface una condición especificada.

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

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IQueryable<TSource>

IQueryable<T> del que se va a devolver un elemento.

predicate
Expression<Func<TSource,Boolean>>

Función para probar cada elemento de una condición.

Devoluciones

TSource

El primer elemento de source que pasa la prueba de predicate.

Excepciones

source o predicate es null.

Ningún elemento satisface la condición de predicate.

o bien

La secuencia de origen está vacía.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) para devolver el primer elemento de una secuencia que satisface una condición.

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

Comentarios

Este método tiene al menos un parámetro de tipo cuyo argumento de tipo Expression<TDelegate> es uno de los Func<T,TResult> tipos. Para estos parámetros, puede pasar una expresión lambda y se compilará en .Expression<TDelegate>

El First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) método genera un MethodCallExpression objeto que representa llamarse First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) a sí mismo como un método genérico construido. A continuación, pasa al MethodCallExpressionExecute<TResult>(Expression) método del IQueryProvider representado por la Provider propiedad del source parámetro .

El comportamiento de la consulta que se produce como resultado de ejecutar un árbol de expresión que representa la llamada First<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>) depende de la implementación del tipo del source parámetro. El comportamiento esperado es que devuelve el primer elemento de source que satisface la condición especificada por predicate.

Se aplica a