Queryable.ElementAtOrDefault Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přetížení
ElementAtOrDefault<TSource>(IQueryable<TSource>, Index) |
Vrátí prvek v zadaném indexu v sekvenci nebo výchozí hodnotu, pokud je index mimo rozsah. |
ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) |
Vrátí prvek v zadaném indexu v sekvenci nebo výchozí hodnotu, pokud je index mimo rozsah. |
ElementAtOrDefault<TSource>(IQueryable<TSource>, Index)
Vrátí prvek v zadaném indexu v sekvenci nebo výchozí hodnotu, pokud je index mimo rozsah.
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
Parametry typu
- TSource
Typ prvků .source
Parametry
- source
- IQueryable<TSource>
Návrat IQueryable<T> prvku z.
- index
- Index
Index prvku, který se má načíst, což je buď od začátku, nebo konce.
Návraty
- TSource
default
je-li index
mimo hranice source
sekvence; jinak prvek na zadané pozici v posloupnosti source
.
Výjimky
source
je null
.
Platí pro
ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32)
Vrátí prvek v zadaném indexu v sekvenci nebo výchozí hodnotu, pokud je index mimo rozsah.
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
Parametry typu
- TSource
Typ prvků .source
Parametry
- source
- IQueryable<TSource>
Návrat IQueryable<T> prvku z.
- index
- Int32
Index založený na nule elementu, který se má načíst.
Návraty
- TSource
default
(TSource
) je-li index
mimo hranice source
; jinak prvek na zadané pozici v source
.
Výjimky
source
je null
.
Příklady
Následující příklad kódu ukazuje, jak použít ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32). Tento příklad používá hodnotu, index
která je mimo hranice zdrojové sekvence.
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]'.
Poznámky
Metoda ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) vygeneruje MethodCallExpression volání ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) jako vytvořenou obecnou metodu. Pak předá MethodCallExpression metodu IQueryProvider Execute<TResult>(Expression) reprezentované Provider vlastností parametrusource
.
Chování dotazu, ke kterému dochází v důsledku spuštění stromu výrazu, který představuje volání ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) , závisí na implementaci typu parametru source
. Očekávané chování spočívá v tom, že vrátí položku na pozici index
v source
, nebo default(TSource)
pokud index
je mimo hranice .source