QueryableExtensions.FirstAsync<TSource> メソッド (IQueryable<TSource>, Expression<Func<TSource, Boolean>>, CancellationToken)
[このページは、Entity Framework 6 に関するページです。最新バージョンは、'Entity Framework' NuGet パッケージとして入手できます。Entity Framework の詳細については、msdn.com/data/ef を参照してください。]
指定された条件を満たすシーケンスの最初の要素を非同期に返します。
名前空間: System.Data.Entity
アセンブリ: EntityFramework (EntityFramework.dll 内)
構文
'宣言
<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")> _
<SuppressMessageAttribute("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")> _
<ExtensionAttribute> _
Public Shared Function FirstAsync(Of TSource) ( _
source As IQueryable(Of TSource), _
predicate As Expression(Of Func(Of TSource, Boolean)), _
cancellationToken As CancellationToken _
) As Task(Of TSource)
'使用
Dim source As IQueryable(Of TSource)
Dim predicate As Expression(Of Func(Of TSource, Boolean))
Dim cancellationToken As CancellationToken
Dim returnValue As Task(Of TSource)
returnValue = source.FirstAsync(predicate, _
cancellationToken)
[SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
[SuppressMessageAttribute("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")]
public static Task<TSource> FirstAsync<TSource>(
this IQueryable<TSource> source,
Expression<Func<TSource, bool>> predicate,
CancellationToken cancellationToken
)
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1006:DoNotNestGenericTypesInMemberSignatures")]
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1011:ConsiderPassingBaseTypesAsParameters")]
[ExtensionAttribute]
public:
generic<typename TSource>
static Task<TSource>^ FirstAsync(
IQueryable<TSource>^ source,
Expression<Func<TSource, bool>^>^ predicate,
CancellationToken cancellationToken
)
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
[<SuppressMessageAttribute("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")>]
static member FirstAsync :
source:IQueryable<'TSource> *
predicate:Expression<Func<'TSource, bool>> *
cancellationToken:CancellationToken -> Task<'TSource>
JScript does not support generic types and methods.
型パラメーター
- TSource
source の要素の型。
パラメーター
- source
型 : System.Linq.IQueryable<TSource>
最初の要素を返す IQueryable<T>。
- predicate
型 : System.Linq.Expressions.Expression<Func<TSource, Boolean>>
各要素が条件を満たしているかどうかをテストする関数。
- cancellationToken
型 : System.Threading.CancellationToken
タスクの完了を待機しているときに観察する CancellationToken。
戻り値
型 : System.Threading.Tasks.Task<TSource>
非同期操作を表すタスク。タスクの結果には、predicate のテストに合格する、source の最初の要素が示されます。
使用上の注意
Visual Basic および Visual C# では、このメソッドを、IQueryable<TSource> 型のオブジェクトのインスタンス メソッドとして呼び出すことができます。インスタンス メソッド構文を使用してこのメソッドを呼び出す場合は、最初のパラメーターを省略します。詳細については、「https://msdn.microsoft.com/ja-jp/library/bb384936(v=vs.113)」または「https://msdn.microsoft.com/ja-jp/library/bb383977(v=vs.113)」を参照してください。
例外
例外 | 状態 |
---|---|
ArgumentNullException | source または predicate が null です。 |
InvalidOperationException | source は IDbAsyncQueryProvider を実装しません。 |
InvalidOperationException | predicate の条件を満たす要素がありません。 |
解説
同じコンテキスト インスタンスに対する複数のアクティブ操作はサポートされません。 このコンテキストで別のメソッドを呼び出す前に、非同期操作が完了したことを確認するために await を使用します。