NonRetryingExecutionStrategy.ExecuteAsync<TState,TResult> 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í.
Provede zadanou asynchronní operaci a vrátí výsledek.
public 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 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 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 státu.
- TResult
Typ výsledku vráceného Task<TResult> nástrojem operation
.
Parametry
- state
- TState
Stav, který bude předán 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, jestli operace proběhla úspěšně, i když došlo k výjimce.
- cancellationToken
- CancellationToken
Token zrušení, který se používá ke zrušení operace opakování, ale ne k operacím, které jsou již spuštěné nebo které se úspěšně dokončily.
Návraty
Úkol, který se spustí až do dokončení, pokud se původní úkol úspěšně dokončí (buď při prvním, nebo po opakování přechodných selhání). Pokud úloha selže s nepřechýlnou chybou nebo je dosaženo limitu opakování, bude vrácený úkol chybný a výjimka musí být dodržena.
Implementuje
Výjimky
Operace nebyla úspěšná po nakonfigurovaném počtu opakování.
CancellationToken Pokud je zrušena.
Poznámky
Další informace a příklady najdete v tématu Odolnost připojení a opakování databází .
Platí pro
Entity Framework