QueryableExtensions.SingleOrDefaultAsync<TSource>-Methode (IQueryable<TSource>, Expression<Func<TSource, Boolean>>)
[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.]
Gibt asynchron das einzige Element einer Sequenz zurück, das eine angegebene Bedingung erfüllt, oder einen Standardwert, wenn kein solches Element vorhanden ist. Diese Methode löst eine Ausnahme aus, wenn mehrere Elemente die Bedingung erfüllen.
Namespace: System.Data.Entity
Assembly: EntityFramework (in EntityFramework.dll)
Syntax
'Declaration
<ExtensionAttribute> _
<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")> _
Public Shared Function SingleOrDefaultAsync(Of TSource) ( _
source As IQueryable(Of TSource), _
predicate As Expression(Of Func(Of TSource, Boolean)) _
) As Task(Of TSource)
'Usage
Dim source As IQueryable(Of TSource)
Dim predicate As Expression(Of Func(Of TSource, Boolean))
Dim returnValue As Task(Of TSource)
returnValue = source.SingleOrDefaultAsync(predicate)
[SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")]
public static Task<TSource> SingleOrDefaultAsync<TSource>(
this IQueryable<TSource> source,
Expression<Func<TSource, bool>> predicate
)
[ExtensionAttribute]
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1006:DoNotNestGenericTypesInMemberSignatures")]
public:
generic<typename TSource>
static Task<TSource>^ SingleOrDefaultAsync(
IQueryable<TSource>^ source,
Expression<Func<TSource, bool>^>^ predicate
)
[<SuppressMessageAttribute("Microsoft.Design", "CA1006:DoNotNestGenericTypesInMemberSignatures")>]
static member SingleOrDefaultAsync :
source:IQueryable<'TSource> *
predicate:Expression<Func<'TSource, bool>> -> Task<'TSource>
JScript does not support generic types and methods.
Typparameter
- TSource
Der Typ der Elemente von source.
Parameter
- source
Typ: System.Linq.IQueryable<TSource>
Eine IQueryable<T>, deren einziges Element zurückgegeben werden soll.
- predicate
Typ: System.Linq.Expressions.Expression<Func<TSource, Boolean>>
Eine Funktion zum Überprüfen eines Elements auf eine Bedingung.
Rückgabewert
Typ: System.Threading.Tasks.Task<TSource>
Eine Aufgabe, die den asynchronen Vorgang darstellt.Das Aufgabeergebnis enthält das einzige Element der Eingabesequenz, das die Bedingung in predicateerfüllt, oder default ( TSource ), wenn kein solches Element gefunden wird.
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).
Ausnahmen
Ausnahme | Bedingung |
---|---|
ArgumentNullException | source oder predicate ist null. |
InvalidOperationException | source implementiert IDbAsyncQueryProvider nicht. |
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.