QueryableExtensions.ToDictionaryAsync<TSource, TKey, TElement> - метод (IQueryable<TSource>, Func<TSource, TKey>, Func<TSource, TElement>, CancellationToken)
[Эта страница относится к документации к Entity Framework 6. Последняя версия доступна в составе пакета Entity Framework NuGet. Дополнительные сведения об Entity Framework см. в разделе msdn.com/data/ef.]
Создает выражение Dictionary<TKey, TValue> из коллекции IQueryable<T> путем его асинхронного перечисления согласно заданной функции выбора ключа и выбора элемента.
Пространство имен: System.Data.Entity
Сборка: EntityFramework (в EntityFramework.dll)
Синтаксис
'Декларация
<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")> _
<ExtensionAttribute> _
Public Shared Function ToDictionaryAsync(Of TSource, TKey, TElement) ( _
source As IQueryable(Of TSource), _
keySelector As Func(Of TSource, TKey), _
elementSelector As Func(Of TSource, TElement), _
cancellationToken As CancellationToken _
) As Task(Of Dictionary(Of TKey, TElement))
'Применение
Dim source As IQueryable(Of TSource)
Dim keySelector As Func(Of TSource, TKey)
Dim elementSelector As Func(Of TSource, TElement)
Dim cancellationToken As CancellationToken
Dim returnValue As Task(Of Dictionary(Of TKey, TElement))
returnValue = source.ToDictionaryAsync(keySelector, _
elementSelector, cancellationToken)
[SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
public static Task<Dictionary<TKey, TElement>> ToDictionaryAsync<TSource, TKey, TElement>(
this IQueryable<TSource> source,
Func<TSource, TKey> keySelector,
Func<TSource, TElement> elementSelector,
CancellationToken cancellationToken
)
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1006:DoNotNestGenericTypesInMemberSignatures")]
[ExtensionAttribute]
public:
generic<typename TSource, typename TKey, typename TElement>
static Task<Dictionary<TKey, TElement>^>^ ToDictionaryAsync(
IQueryable<TSource>^ source,
Func<TSource, TKey>^ keySelector,
Func<TSource, TElement>^ elementSelector,
CancellationToken cancellationToken
)
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
static member ToDictionaryAsync :
source:IQueryable<'TSource> *
keySelector:Func<'TSource, 'TKey> *
elementSelector:Func<'TSource, 'TElement> *
cancellationToken:CancellationToken -> Task<Dictionary<'TKey, 'TElement>>
JScript does not support generic types and methods.
Параметры типа
- TSource
Тип элементов последовательности source.
- TKey
Тип ключа, возвращенного средством выбора keySelector.
- TElement
Тип значения, возвращенного elementSelector.
Параметры
- source
Тип: System.Linq.IQueryable<TSource>
Объект IQueryable<T>, на основе которого создается словарь Dictionary<TKey, TValue>.
- keySelector
Тип: System.Func<TSource, TKey>
Функция, предназначенная для извлечения ключа из каждого элемента.
- elementSelector
Тип: System.Func<TSource, TElement>
Функция преобразования, предназначенная для формирования значения элемента результата из каждого элемента.
- cancellationToken
Тип: System.Threading.CancellationToken
Токен CancellationToken, который нужно отслеживать во время ожидания выполнения задачи.
Возвращаемое значение
Тип: System.Threading.Tasks.Task<Dictionary<TKey, TElement>>
Задача, представляющая асинхронную операцию.Результат задачи содержит словарь Dictionary<TKey, TValue>, который содержит значения типа TElement, выбранные из входной последовательности.
Примечание об использовании
В Visual Basic и C# этот метод можно вызывать как метод экземпляра для любого объекта типа IQueryable<TSource>. При вызове метода для экземпляра следует опускать первый параметр. Дополнительные сведения см. в разделе https://msdn.microsoft.com/ru-ru/library/bb384936(v=vs.113) или https://msdn.microsoft.com/ru-ru/library/bb383977(v=vs.113).
Примечания
Несколько активных операций в одном экземпляре контекста не поддерживается. Используйте «await» для обеспечения того, чтобы все асинхронные операции завершались перед вызовом другого метода применительно к этому контексту.