QueryableExtensions.ToDictionaryAsync<TSource, TKey, TElement>-Methode (IQueryable<TSource>, Func<TSource, TKey>, Func<TSource, TElement>, IEqualityComparer<TKey>)
[Diese Seite bezieht sich auf Entity Framework Version 6. Die neueste Version ist als 'Entity Framework' NuGet-Paket verfügbar. Weitere Informationen zu Entity Framework finden Sie unter msdn.com/data/ef.]
Erstellt ein Dictionary<TKey, TValue> aus einem IQueryable<T>, indem dieses gemäß einer angegebenen Schlüsselauswahlfunktion, einem Vergleich und einer Elementauswahlfunktion aufgelistet wird.
Namespace: System.Data.Entity
Assembly: EntityFramework (in EntityFramework.dll)
Syntax
'Declaration
<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) _
) As Task(Of Dictionary(Of TKey, TElement))
'Usage
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 returnValue As Task(Of Dictionary(Of TKey, TElement))
returnValue = source.ToDictionaryAsync(keySelector, _
elementSelector, comparer)
[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
)
[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
)
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
static member ToDictionaryAsync :
source:IQueryable<'TSource> *
keySelector:Func<'TSource, 'TKey> *
elementSelector:Func<'TSource, 'TElement> *
comparer:IEqualityComparer<'TKey> -> Task<Dictionary<'TKey, 'TElement>>
JScript does not support generic types and methods.
Typparameter
- TSource
Der Typ der Elemente von source.
- TKey
Der Typ des Schlüssels, der von keySelector zurückgegebenen wird.
- TElement
Der Typ des Werts, der von der elementSelector zurückgegeben wird.
Parameter
- source
Typ: System.Linq.IQueryable<TSource>
Ein IQueryable<T>, aus dem ein Dictionary<TKey, TValue> erstellt werden soll.
- keySelector
Typ: System.Func<TSource, TKey>
Eine Funktion zum Extrahieren eines Schlüssels aus jedem Element.
- elementSelector
Typ: System.Func<TSource, TElement>
Eine Transformationsfunktion, mit der aus jedem Element ein Ergebniselementwert erzeugt wird.
- comparer
Typ: System.Collections.Generic.IEqualityComparer<TKey>
Ein IEqualityComparer<T> zum Vergleichen von Schlüsseln.
Rückgabewert
Typ: System.Threading.Tasks.Task<Dictionary<TKey, TElement>>
Eine Aufgabe, die den asynchronen Vorgang darstellt.Das Aufgabeergebnis enthält ein Dictionary<TKey, TValue>, das Werte des Typs TElement enthält, die aus der Eingabesequenz ausgewählt wurden.
Hinweis zur Verwendung
In Visual Basic und C# können Sie diese Methode als Instanzenmethode für ein beliebiges Objekt vom Typ IQueryable<TSource> aufrufen. Bei Verwendung der Syntax für Instanzenmethoden lassen Sie den ersten Parameter aus. Weitere Informationen finden Sie unter https://msdn.microsoft.com/de-de/library/bb384936(v=vs.113) oder https://msdn.microsoft.com/de-de/library/bb383977(v=vs.113).
Hinweise
Mehrere aktive Vorgänge für dieselbe Kontextinstanz werden nicht unterstützt. Verwenden Sie await, um sicherzustellen, dass sämtliche asynchronen Vorgänge abgeschlossen sind, bevor eine andere Methode in diesem Kontext aufgerufen wird.