Queryable.ElementAtOrDefault メソッド

定義

オーバーロード

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

シーケンス内の指定したインデックス位置にある要素を返します。インデックスが範囲外の場合は既定値を返します。

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

シーケンス内の指定したインデックス位置にある要素を返します。インデックスが範囲外の場合は既定値を返します。

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

ソース:
Queryable.cs
ソース:
Queryable.cs
ソース:
Queryable.cs

シーケンス内の指定したインデックス位置にある要素を返します。インデックスが範囲外の場合は既定値を返します。

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

型パラメーター

TSource

source の要素の型。

パラメーター

source
IQueryable<TSource>

返される要素が含まれる IQueryable<T>

index
Index

取得する要素のインデックス。これは、先頭または末尾のいずれかです。

戻り値

TSource

default がシーケンスの境界外にある場合 index は 。それ以外の source 場合は、シーケンス内の指定した位置にある source 要素。

例外

sourcenull です。

適用対象

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

ソース:
Queryable.cs
ソース:
Queryable.cs
ソース:
Queryable.cs

シーケンス内の指定したインデックス位置にある要素を返します。インデックスが範囲外の場合は既定値を返します。

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

型パラメーター

TSource

source の要素の型。

パラメーター

source
IQueryable<TSource>

返される要素が含まれる IQueryable<T>

index
Int32

取得する要素の、0 から始まるインデックス。

戻り値

TSource

default(TSource) が のsource境界外にある場合indexは 。それ以外の場合は、 内の指定した位置にある source要素。

例外

sourcenullです。

ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) を使用する方法を次のコード例に示します。 この例では、 の値 index がソース シーケンスの境界外にある を使用します。

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]'.

注釈

メソッドは ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32)MethodCallExpression 構築されたジェネリック メソッドとして自身を呼び出すことを ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) 表す を生成します。 次に、 パラメーターの MethodCallExpressionExecute<TResult>(Expression) プロパティで表される の IQueryProvider メソッドに をProvidersource渡します。

呼び出し ElementAtOrDefault<TSource>(IQueryable<TSource>, Int32) を表す式ツリーを実行した結果として発生するクエリ動作は、 パラメーターの型の source 実装によって異なります。 予期される動作は、 内の位置indexにある項目を返すかdefault(TSource)、 が の範囲外にあるsource場合indexは を返sourceします。

適用対象