Queryable.ElementAtOrDefault Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
ElementAtOrDefault<TSource>(IQueryable<TSource>, Index) |
Restituisce l'elemento in corrispondenza di un indice specificato in una sequenza o un valore predefinito se l'indice è esterno all'intervallo. |
ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) |
Restituisce l'elemento in corrispondenza di un indice specificato in una sequenza o un valore predefinito se l'indice è esterno all'intervallo. |
ElementAtOrDefault<TSource>(IQueryable<TSource>, Index)
- Origine:
- Queryable.cs
- Origine:
- Queryable.cs
- Origine:
- Queryable.cs
Restituisce l'elemento in corrispondenza di un indice specificato in una sequenza o un valore predefinito se l'indice è esterno all'intervallo.
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
Parametri di tipo
- TSource
Tipo degli elementi di source
.
Parametri
- source
- IQueryable<TSource>
Oggetto IQueryable<T> dal quale restituire un elemento.
- index
- Index
Indice dell'elemento da recuperare, ovvero dall'inizio o dalla fine.
Restituisce
default
se index
è esterno ai limiti della source
sequenza; in caso contrario, l'elemento in corrispondenza della posizione specificata nella source
sequenza.
Eccezioni
source
è null
.
Si applica a
ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32)
- Origine:
- Queryable.cs
- Origine:
- Queryable.cs
- Origine:
- Queryable.cs
Restituisce l'elemento in corrispondenza di un indice specificato in una sequenza o un valore predefinito se l'indice è esterno all'intervallo.
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
Parametri di tipo
- TSource
Tipo degli elementi di source
.
Parametri
- source
- IQueryable<TSource>
Oggetto IQueryable<T> dal quale restituire un elemento.
- index
- Int32
Indice in base zero dell'elemento da recuperare.
Restituisce
default
(TSource
) se index
non rientra nei limiti di source
; in caso contrario, l'elemento in corrispondenza della posizione specificata in source
.
Eccezioni
source
è null
.
Esempio
Nell'esempio di codice seguente viene illustrato come utilizzare ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32). In questo esempio viene utilizzato un valore per index
che non rientra nei limiti della sequenza di origine.
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]'.
Commenti
Il ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) metodo genera un MethodCallExpression oggetto che rappresenta ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) se stesso come metodo generico costruito. Passa quindi l'oggetto MethodCallExpression al Execute<TResult>(Expression) metodo dell'oggetto IQueryProvider rappresentato dalla Provider proprietà del source
parametro .
Il comportamento della query che si verifica come risultato dell'esecuzione di un albero delle espressioni che rappresenta la chiamata ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) dipende dall'implementazione del tipo del source
parametro. Il comportamento previsto è che restituisce l'elemento in corrispondenza della posizione index
in source
o default(TSource)
se index
è esterno ai limiti di source
.