Sdílet prostřednictvím


EntityFrameworkQueryableExtensions.SingleAsync Metoda

Definice

Přetížení

SingleAsync<TSource>(IQueryable<TSource>, CancellationToken)

Asynchronně vrátí jediný prvek sekvence a vyvolá výjimku, pokud v sekvenci není přesně jeden prvek.

SingleAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

Asynchronně vrátí jediný prvek sekvence, který splňuje zadanou podmínku, a vyvolá výjimku, pokud existuje více než jeden takový prvek.

SingleAsync<TSource>(IQueryable<TSource>, CancellationToken)

Asynchronně vrátí jediný prvek sekvence a vyvolá výjimku, pokud v sekvenci není přesně jeden prvek.

public static System.Threading.Tasks.Task<TSource> SingleAsync<TSource> (this System.Linq.IQueryable<TSource> source, System.Threading.CancellationToken cancellationToken = default);
static member SingleAsync : System.Linq.IQueryable<'Source> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Source>
<Extension()>
Public Function SingleAsync(Of TSource) (source As IQueryable(Of TSource), Optional cancellationToken As CancellationToken = Nothing) As Task(Of TSource)

Parametry typu

TSource

Typ elementů .source

Parametry

source
IQueryable<TSource>

An IQueryable<T> , která vrátí jeden prvek z.

cancellationToken
CancellationToken

A CancellationToken , která se má sledovat při čekání na dokončení úkolu.

Návraty

Task<TSource>

Úloha, která představuje asynchronní operaci. Výsledek úkolu obsahuje jeden prvek vstupní sekvence.

Výjimky

source je null.

source obsahuje více než jeden prvek.

-nebo-

source neobsahuje žádné prvky.

Poznámky

Více aktivních operací ve stejné kontextové instanci není podporováno. Pomocí se ujistěte await , že všechny asynchronní operace byly dokončeny před voláním jiné metody v tomto kontextu. Další informace a příklady najdete v tématu Předcházení problémům s vlákny DbContext .

Další informace a příklady najdete v tématu Dotazování dat pomocí EF Core .

Platí pro

SingleAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

Asynchronně vrátí jediný prvek sekvence, který splňuje zadanou podmínku, a vyvolá výjimku, pokud existuje více než jeden takový prvek.

public static System.Threading.Tasks.Task<TSource> SingleAsync<TSource> (this System.Linq.IQueryable<TSource> source, System.Linq.Expressions.Expression<Func<TSource,bool>> predicate, System.Threading.CancellationToken cancellationToken = default);
static member SingleAsync : System.Linq.IQueryable<'Source> * System.Linq.Expressions.Expression<Func<'Source, bool>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Source>
<Extension()>
Public Function SingleAsync(Of TSource) (source As IQueryable(Of TSource), predicate As Expression(Of Func(Of TSource, Boolean)), Optional cancellationToken As CancellationToken = Nothing) As Task(Of TSource)

Parametry typu

TSource

Typ elementů .source

Parametry

source
IQueryable<TSource>

An IQueryable<T> , která vrátí jeden prvek z.

predicate
Expression<Func<TSource,Boolean>>

Funkce pro testování prvku pro podmínku.

cancellationToken
CancellationToken

A CancellationToken , která se má sledovat při čekání na dokončení úkolu.

Návraty

Task<TSource>

Úloha, která představuje asynchronní operaci. Výsledek úkolu obsahuje jeden prvek vstupní sekvence, který splňuje podmínku v predicate.

Výjimky

source nebo predicate je null.

Žádný prvek nesplňuje podmínku v predicate.

-nebo-

Více než jeden prvek splňuje podmínku v predicate.

-nebo-

source neobsahuje žádné prvky.

Poznámky

Více aktivních operací ve stejné kontextové instanci není podporováno. Pomocí se ujistěte await , že všechny asynchronní operace byly dokončeny před voláním jiné metody v tomto kontextu. Další informace a příklady najdete v tématu Předcházení problémům s vlákny DbContext .

Další informace a příklady najdete v tématu Dotazování dat pomocí EF Core .

Platí pro