次の方法で共有


QueryableExtensions.ToDictionaryAsync<TSource, TKey> メソッド (IQueryable<TSource>, Func<TSource, TKey>, IEqualityComparer<TKey>, CancellationToken)

[このページは、Entity Framework 6 に関するページです。最新バージョンは、'Entity Framework' NuGet パッケージとして入手できます。Entity Framework の詳細については、msdn.com/data/ef を参照してください。]

指定されたキー セレクター関数および比較子に従って、非同期に列挙して IQueryable<T> から Dictionary<TKey, TValue> を作成します。

名前空間:  System.Data.Entity
アセンブリ:  EntityFramework (EntityFramework.dll 内)

構文

'宣言
<ExtensionAttribute> _
<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")> _
Public Shared Function ToDictionaryAsync(Of TSource, TKey) ( _
    source As IQueryable(Of TSource), _
    keySelector As Func(Of TSource, TKey), _
    comparer As IEqualityComparer(Of TKey), _
    cancellationToken As CancellationToken _
) As Task(Of Dictionary(Of TKey, TSource))
'使用
Dim source As IQueryable(Of TSource)
Dim keySelector As Func(Of TSource, TKey)
Dim comparer As IEqualityComparer(Of TKey)
Dim cancellationToken As CancellationToken 
Dim returnValue As Task(Of Dictionary(Of TKey, TSource))

returnValue = source.ToDictionaryAsync(keySelector, _
    comparer, cancellationToken)
[SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
public static Task<Dictionary<TKey, TSource>> ToDictionaryAsync<TSource, TKey>(
    this IQueryable<TSource> source,
    Func<TSource, TKey> keySelector,
    IEqualityComparer<TKey> comparer,
    CancellationToken cancellationToken
)
[ExtensionAttribute]
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1006:DoNotNestGenericTypesInMemberSignatures")]
public:
generic<typename TSource, typename TKey>
static Task<Dictionary<TKey, TSource>^>^ ToDictionaryAsync(
    IQueryable<TSource>^ source, 
    Func<TSource, TKey>^ keySelector, 
    IEqualityComparer<TKey>^ comparer, 
    CancellationToken cancellationToken
)
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
static member ToDictionaryAsync : 
        source:IQueryable<'TSource> * 
        keySelector:Func<'TSource, 'TKey> * 
        comparer:IEqualityComparer<'TKey> * 
        cancellationToken:CancellationToken -> Task<Dictionary<'TKey, 'TSource>> 
JScript does not support generic types and methods.

型パラメーター

  • TSource
    source の要素の型。
  • TKey
    keySelector によって返されるキーの型。

パラメーター

  • keySelector
    型 : System.Func<TSource, TKey>
    各要素からキーを抽出する関数。

戻り値

型 : System.Threading.Tasks.Task<Dictionary<TKey, TSource>>
非同期操作を表すタスク。タスクの結果には、選択したキーと値を格納する Dictionary<TKey, TValue> が示されます。

使用上の注意

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)」を参照してください。

解説

同じコンテキスト インスタンスに対する複数のアクティブ操作はサポートされません。 このコンテキストで別のメソッドを呼び出す前に、非同期操作が完了したことを確認するために await を使用します。

参照

参照

QueryableExtensions クラス

ToDictionaryAsync オーバーロード

System.Data.Entity 名前空間