QueryableExtensions.ToDictionaryAsync<TSource, TKey, TElement> (Método) (IQueryable<TSource>, Func<TSource, TKey>, Func<TSource, TElement>, IEqualityComparer<TKey>, CancellationToken)
[Esta página es específica de la versión 6 de Entity Framework. La versión más reciente está disponible como el paquete NuGet de Entity Framework. Para más información sobre Entity Framework, consulte msdn.com/es-ES/data/ef].
Crea un Dictionary<TKey, TValue> a partir de una IQueryable<T> enumerándola de forma asincrónica de acuerdo con una función de selector de clave, un comparador y una función de selector de elemento especificados.
Espacio de nombres: System.Data.Entity
Ensamblado: EntityFramework (en EntityFramework.dll)
Sintaxis
'Declaración
<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), _
comparer As IEqualityComparer(Of TKey), _
cancellationToken As CancellationToken _
) As Task(Of Dictionary(Of TKey, TElement))
'Uso
Dim source As IQueryable(Of TSource)
Dim keySelector As Func(Of TSource, TKey)
Dim elementSelector As Func(Of TSource, TElement)
Dim comparer As IEqualityComparer(Of TKey)
Dim cancellationToken As CancellationToken
Dim returnValue As Task(Of Dictionary(Of TKey, TElement))
returnValue = source.ToDictionaryAsync(keySelector, _
elementSelector, comparer, 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,
IEqualityComparer<TKey> comparer,
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,
IEqualityComparer<TKey>^ comparer,
CancellationToken cancellationToken
)
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
static member ToDictionaryAsync :
source:IQueryable<'TSource> *
keySelector:Func<'TSource, 'TKey> *
elementSelector:Func<'TSource, 'TElement> *
comparer:IEqualityComparer<'TKey> *
cancellationToken:CancellationToken -> Task<Dictionary<'TKey, 'TElement>>
JScript does not support generic types and methods.
Parámetros de tipo
- TSource
Tipo de los elementos de source.
- TKey
Tipo de la clave devuelta por keySelector.
- TElement
Tipo del valor devuelto por elementSelector.
Parámetros
- source
Tipo: System.Linq.IQueryable<TSource>
Objeto IQueryable<T> a partir del cual se va a crear Dictionary<TKey, TValue>.
- keySelector
Tipo: System.Func<TSource, TKey>
Función para extraer una clave a partir de cada elemento.
- elementSelector
Tipo: System.Func<TSource, TElement>
Función de transformación para generar un valor de elemento de resultado a partir de cada elemento.
- comparer
Tipo: System.Collections.Generic.IEqualityComparer<TKey>
IEqualityComparer<T> para comparar claves.
- cancellationToken
Tipo: System.Threading.CancellationToken
CancellationToken que se va a observar mientras se espera que se complete la tarea.
Valor devuelto
Tipo: System.Threading.Tasks.Task<Dictionary<TKey, TElement>>
Tarea que representa la operación asincrónica.El resultado de la tarea contiene un Dictionary<TKey, TValue> que contiene valores de tipo TElement seleccionados de la secuencia de entrada.
Nota sobre el uso
En Visual Basic y C#, se puede llamar a este método como a un método de instancia en cualquier objeto de tipo IQueryable<TSource>. Cuando emplee la sintaxis del método de instancia para llamar a este método, omita el primer parámetro. Para obtener más información, vea https://msdn.microsoft.com/es-es/library/bb384936(v=vs.113) o https://msdn.microsoft.com/es-es/library/bb383977(v=vs.113).
Comentarios
No se admiten varias operaciones activas en la misma instancia de contexto. Use 'await' para asegurarse de que se han completado todas las operaciones asincrónicas antes de llamar a otro método en este contexto.