ExecutionStrategy.ExecuteAsync Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přetížení
ExecuteAsync<TState,TResult>(TState, Func<DbContext,TState,CancellationToken, Task<TResult>>, Func<DbContext,TState,CancellationToken,Task<ExecutionResult<TResult>>>, CancellationToken) |
Provede zadanou asynchronní operaci a vrátí výsledek. |
ExecuteAsync<TState,TResult>(Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken,Task<ExecutionResult<TResult>>>, TState, CancellationToken) |
Provede zadanou asynchronní operaci a vrátí výsledek. |
ExecuteAsync<TState,TResult>(TState, Func<DbContext,TState,CancellationToken, Task<TResult>>, Func<DbContext,TState,CancellationToken,Task<ExecutionResult<TResult>>>, CancellationToken)
Provede zadanou asynchronní operaci a vrátí výsledek.
public virtual System.Threading.Tasks.Task<TResult> ExecuteAsync<TState,TResult> (TState state, Func<Microsoft.EntityFrameworkCore.DbContext,TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<Microsoft.EntityFrameworkCore.DbContext,TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<TResult>>> verifySucceeded, System.Threading.CancellationToken cancellationToken = default);
public virtual System.Threading.Tasks.Task<TResult> ExecuteAsync<TState,TResult> (TState state, Func<Microsoft.EntityFrameworkCore.DbContext,TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<Microsoft.EntityFrameworkCore.DbContext,TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<TResult>>>? verifySucceeded, System.Threading.CancellationToken cancellationToken = default);
abstract member ExecuteAsync : 'State * Func<Microsoft.EntityFrameworkCore.DbContext, 'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<Microsoft.EntityFrameworkCore.DbContext, 'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
override this.ExecuteAsync : 'State * Func<Microsoft.EntityFrameworkCore.DbContext, 'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<Microsoft.EntityFrameworkCore.DbContext, 'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Public Overridable Function ExecuteAsync(Of TState, TResult) (state As TState, operation As Func(Of DbContext, TState, CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of DbContext, TState, CancellationToken, Task(Of ExecutionResult(Of TResult))), Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)
Parametry typu
- TState
Typ stavu.
- TResult
Typ výsledku vrácený Task<TResult> příkazem operation
.
Parametry
- state
- TState
Stav, který se předá operaci.
- operation
- Func<DbContext,TState,CancellationToken,Task<TResult>>
Funkce, která vrací spuštěný úkol typu TResult
.
- verifySucceeded
- Func<DbContext,TState,CancellationToken,Task<ExecutionResult<TResult>>>
Delegát, který testuje, zda operace byla úspěšná, i když byla vyvolán výjimka.
- cancellationToken
- CancellationToken
Token zrušení, který slouží ke zrušení operace opakování, ale ne operace, které jsou již v provozu nebo které se již úspěšně dokončily.
Návraty
Úloha, která se dokončí, pokud se původní úloha úspěšně dokončí (poprvé nebo po opakování přechodných selhání). Pokud úloha selže s nepřechýlnou chybou nebo pokud je dosaženo limitu opakování, bude vrácená úloha chybná a musí být dodržena výjimka.
Implementuje
Výjimky
Po nakonfigurovaný počet opakovaných pokusů nebyla operace úspěšná.
CancellationToken Pokud je zrušena.
Poznámky
Další informace a příklady najdete v tématu Věnovaném odolnosti připojení a opakovaným pokusům o databázi .
Platí pro
ExecuteAsync<TState,TResult>(Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken,Task<ExecutionResult<TResult>>>, TState, CancellationToken)
Provede zadanou asynchronní operaci a vrátí výsledek.
public virtual System.Threading.Tasks.Task<TResult> ExecuteAsync<TState,TResult> (Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<TResult>>> verifySucceeded, TState state, System.Threading.CancellationToken cancellationToken = default);
abstract member ExecuteAsync : Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>>> * 'State * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
override this.ExecuteAsync : Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.ExecutionResult<'Result>>> * 'State * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Public Overridable Function ExecuteAsync(Of TState, TResult) (operation As Func(Of TState, CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of TState, CancellationToken, Task(Of ExecutionResult(Of TResult))), state As TState, Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)
Parametry typu
- TState
Typ stavu.
- TResult
Typ výsledku vrácený Task<TResult> příkazem operation
.
Parametry
- operation
- Func<TState,CancellationToken,Task<TResult>>
Funkce, která vrací spuštěný úkol typu TResult
.
- verifySucceeded
- Func<TState,CancellationToken,Task<ExecutionResult<TResult>>>
Delegát, který testuje, zda operace byla úspěšná, i když byla vyvolán výjimka.
- state
- TState
Stav, který se předá operaci.
- cancellationToken
- CancellationToken
Token zrušení, který slouží ke zrušení operace opakování, ale ne operace, které jsou již v provozu nebo které se již úspěšně dokončily.
Návraty
Úloha, která se dokončí, pokud se původní úloha úspěšně dokončí (poprvé nebo po opakování přechodných selhání). Pokud úloha selže s nepřechýlnou chybou nebo pokud je dosaženo limitu opakování, bude vrácená úloha chybná a musí být dodržena výjimka.
Implementuje
Výjimky
Vyvolá se, pokud operace po nakonfigurovaný počet opakovaných pokusů neuspěla.
Platí pro
Entity Framework