Comparteix a través de


Queryable.ElementAtOrDefault Método

Definición

Sobrecargas

ElementAtOrDefault<TSource>(IQueryable<TSource>, Index)

Devuelve el elemento situado en un índice especificado de una secuencia o un valor predeterminado si el índice está fuera del intervalo.

ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32)

Devuelve el elemento situado en un índice especificado de una secuencia o un valor predeterminado si el índice está fuera del intervalo.

ElementAtOrDefault<TSource>(IQueryable<TSource>, Index)

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

Devuelve el elemento situado en un índice especificado de una secuencia o un valor predeterminado si el índice está fuera del intervalo.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource ElementAtOrDefault(System::Linq::IQueryable<TSource> ^ source, Index index);
public static TSource? ElementAtOrDefault<TSource> (this System.Linq.IQueryable<TSource> source, Index index);
static member ElementAtOrDefault : System.Linq.IQueryable<'Source> * Index -> 'Source
<Extension()>
Public Function ElementAtOrDefault(Of TSource) (source As IQueryable(Of TSource), index As Index) 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.

index
Index

Índice del elemento que se va a recuperar, que es desde el principio o el final.

Devoluciones

TSource

default si index está fuera de los límites de la source secuencia; de lo contrario, el elemento en la posición especificada de la source secuencia.

Excepciones

source es null.

Se aplica a

ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32)

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

Devuelve el elemento situado en un índice especificado de una secuencia o un valor predeterminado si el índice está fuera del intervalo.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource ElementAtOrDefault(System::Linq::IQueryable<TSource> ^ source, int index);
public static TSource ElementAtOrDefault<TSource> (this System.Linq.IQueryable<TSource> source, int index);
public static TSource? ElementAtOrDefault<TSource> (this System.Linq.IQueryable<TSource> source, int index);
static member ElementAtOrDefault : System.Linq.IQueryable<'Source> * int -> 'Source
<Extension()>
Public Function ElementAtOrDefault(Of TSource) (source As IQueryable(Of TSource), index As Integer) 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.

index
Int32

Índice de base cero del elemento que se debe recuperar.

Devoluciones

TSource

default(TSource) si index está fuera de los límites de source; de lo contrario, el elemento en la posición especificada de source.

Excepciones

source es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo utilizar ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32). En este ejemplo se usa un valor para index que esté fuera de los límites de la secuencia de origen.

string[] names = { "Hartono, Tommy", "Adams, Terry",
                   "Andersen, Henriette Thaulow",
                   "Hedlund, Magnus", "Ito, Shu" };

int index = 20;

string name = names.AsQueryable().ElementAtOrDefault(index);

Console.WriteLine(
    "The name chosen at index {0} is '{1}'.",
    index,
    String.IsNullOrEmpty(name) ? "[NONE AT THIS INDEX]" : name);

/*
    This code produces the following output:

    The name chosen at index 20 is '[NONE AT THIS INDEX]'.
*/
Dim names() As String = {"Hartono, Tommy", "Adams, Terry", _
                   "Andersen, Henriette Thaulow", _
                   "Hedlund, Magnus", "Ito, Shu"}

Dim index As Integer = 20

Dim name As String = names.AsQueryable().ElementAtOrDefault(index)

MsgBox(String.Format("The name at index {0} is '{1}'.", _
    index, IIf(String.IsNullOrEmpty(name), "[NONE AT THIS INDEX]", name)))

' This code produces the following output:
'
' The name at index 20 is '[NONE AT THIS INDEX]'.

Comentarios

El ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) método genera un MethodCallExpression objeto que representa llamarse ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) 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 consulta que se produce como resultado de ejecutar un árbol de expresión que representa la llamada ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) depende de la implementación del tipo del source parámetro. El comportamiento esperado es que devuelve el elemento en la posición index de source, o default(TSource) si index está fuera de los límites de source.

Se aplica a