Queryable.ElementAtOrDefault Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
ElementAtOrDefault<TSource>(IQueryable<TSource>, Index) |
Gibt das Element an einem angegebenen Index in einer Sequenz oder einen Standardwert zurück, wenn der Index außerhalb des gültigen Bereichs liegt. |
ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) |
Gibt das Element an einem angegebenen Index in einer Sequenz oder einen Standardwert zurück, wenn der Index außerhalb des gültigen Bereichs liegt. |
ElementAtOrDefault<TSource>(IQueryable<TSource>, Index)
Gibt das Element an einem angegebenen Index in einer Sequenz oder einen Standardwert zurück, wenn der Index außerhalb des gültigen Bereichs liegt.
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
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IQueryable<TSource>
Ein IQueryable<T>, aus dem ein Element zurückgegeben werden soll
- index
- Index
Der Index des zu abrufenden Elements, das entweder vom Anfang oder ende aus ist.
Gibt zurück
- TSource
default
wenn sich die Grenzen der Sequenz außerhalb der Sequenz befinden; andernfalls index
wird das Element an der angegebenen Position in der source
source
Sequenz angezeigt.
Ausnahmen
source
ist null
.
Gilt für
ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32)
Gibt das Element an einem angegebenen Index in einer Sequenz oder einen Standardwert zurück, wenn der Index außerhalb des gültigen Bereichs liegt.
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
Typparameter
- TSource
Der Typ der Elemente von source
.
Parameter
- source
- IQueryable<TSource>
Ein IQueryable<T>, aus dem ein Element zurückgegeben werden soll
- index
- Int32
Der auf 0 (null) basierende Index des abzurufenden Elements.
Gibt zurück
- TSource
default
(TSource
), wenn index
außerhalb der Begrenzungen von source
liegt, andernfalls das Element an der angegebenen Position in source
.
Ausnahmen
source
ist null
.
Beispiele
Das folgende Codebeispiel zeigt die Verwendung von ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32). In diesem Beispiel wird ein Wert verwendet, der index
außerhalb der Grenzen der Quellsequenz liegt.
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]'.
Hinweise
Die ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) Methode generiert eine MethodCallExpression , die das Aufrufen ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) selbst als konstruierte generische Methode darstellt. Anschließend wird die MethodCallExpression Methode IQueryProvider des dargestellten Objekts durch die Execute<TResult>(Expression) Provider Eigenschaft des source
Parameters übergeben.
Das Abfrageverhalten, das aufgrund der Ausführung einer Ausdrucksstruktur auftritt, die aufruft, hängt von der Implementierung des Typs ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) des source
Parameters ab. Das erwartete Verhalten besteht darin, dass es das Element an der Position index
zurückgibt source
oder default(TSource)
index
außerhalb der Grenzen von source
.