RelationalExecutionStrategyExtensions.ExecuteInTransactionAsync 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í
ExecuteInTransactionAsync(IExecutionStrategy, Func<Task>, Func<Task<Boolean>>, IsolationLevel)
Provede zadanou asynchronní operaci v transakci. Umožňuje zkontrolovat, zda transakce byla vrácena zpět, pokud dojde k chybě během potvrzení.
public static System.Threading.Tasks.Task ExecuteInTransactionAsync(this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<System.Threading.Tasks.Task> operation, Func<System.Threading.Tasks.Task<bool>> verifySucceeded, System.Data.IsolationLevel isolationLevel);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<System.Threading.Tasks.Task> * Func<System.Threading.Tasks.Task<bool>> * System.Data.IsolationLevel -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteInTransactionAsync (strategy As IExecutionStrategy, operation As Func(Of Task), verifySucceeded As Func(Of Task(Of Boolean)), isolationLevel As IsolationLevel) As Task
Parametry
- strategy
- IExecutionStrategy
Strategie, která se bude používat pro provádění.
Delegát, který testuje, zda operace byla úspěšná, i když byla vyvolána výjimka při potvrzení transakce.
- isolationLevel
- IsolationLevel
Úroveň izolace, která se má použít pro transakci.
Návraty
Úloha, která se spustí k dokončení, pokud se původní úkol úspěšně dokončí (buď poprvé, nebo po opakování přechodných selhání). Pokud úloha selže s chybou, která není přechodná nebo je dosaženo limitu opakování, vrácený úkol bude chybný a výjimka musí být zjištěna.
Výjimky
Operace nebyla úspěšná po nakonfigurovaném počtu opakování.
Poznámky
Další informace a příklady najdete v tématu Odolnost připojení a opakování databází .
Platí pro
ExecuteInTransactionAsync(IExecutionStrategy, Func<CancellationToken,Task>, Func<CancellationToken,Task<Boolean>>, IsolationLevel, CancellationToken)
Provede zadanou asynchronní operaci v transakci. Umožňuje zkontrolovat, zda transakce byla vrácena zpět, pokud dojde k chybě během potvrzení.
public static System.Threading.Tasks.Task ExecuteInTransactionAsync(this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task> operation, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task<bool>> verifySucceeded, System.Data.IsolationLevel isolationLevel, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task> * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * System.Data.IsolationLevel * System.Threading.CancellationToken -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteInTransactionAsync (strategy As IExecutionStrategy, operation As Func(Of CancellationToken, Task), verifySucceeded As Func(Of CancellationToken, Task(Of Boolean)), isolationLevel As IsolationLevel, Optional cancellationToken As CancellationToken = Nothing) As Task
Parametry
- strategy
- IExecutionStrategy
Strategie, která se bude používat pro provádění.
- operation
- Func<CancellationToken,Task>
Funkce, která vrací spuštěný úkol.
- verifySucceeded
- Func<CancellationToken,Task<Boolean>>
Delegát, který testuje, zda operace byla úspěšná, i když byla vyvolána výjimka při potvrzení transakce.
- isolationLevel
- IsolationLevel
Úroveň izolace, která se má použít pro transakci.
- cancellationToken
- CancellationToken
Token zrušení použitý ke zrušení operace opakování, ale ne operace, které jsou již spuštěny nebo které již byly úspěšně dokončeny.
Návraty
Úloha, která se spustí k dokončení, pokud se původní úkol úspěšně dokončí (buď poprvé, nebo po opakování přechodných selhání). Pokud úloha selže s chybou, která není přechodná nebo je dosaženo limitu opakování, vrácený úkol bude chybný a výjimka musí být zjištěna.
Výjimky
Operace nebyla úspěšná po nakonfigurovaném počtu opakování.
Pokud je zrušena CancellationToken .
Poznámky
Další informace a příklady najdete v tématu Odolnost připojení a opakování databází .
Platí pro
ExecuteInTransactionAsync<TResult>(IExecutionStrategy, Func<CancellationToken, Task<TResult>>, Func<CancellationToken,Task<Boolean>>, IsolationLevel, CancellationToken)
Provede zadanou asynchronní operaci v transakci a vrátí výsledek. Umožňuje zkontrolovat, zda transakce byla vrácena zpět, pokud dojde k chybě během potvrzení.
public static System.Threading.Tasks.Task<TResult> ExecuteInTransactionAsync<TResult>(this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<System.Threading.CancellationToken,System.Threading.Tasks.Task<bool>> verifySucceeded, System.Data.IsolationLevel isolationLevel, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * System.Data.IsolationLevel * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteInTransactionAsync(Of TResult) (strategy As IExecutionStrategy, operation As Func(Of CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of CancellationToken, Task(Of Boolean)), isolationLevel As IsolationLevel, Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)
Parametry typu
- TResult
Typ výsledku vráceného Task<TResult> uživatelem operation.
Parametry
- strategy
- IExecutionStrategy
Strategie, která se bude používat pro provádění.
- operation
- Func<CancellationToken,Task<TResult>>
Funkce, která vrací spuštěný úkol typu TResult.
- verifySucceeded
- Func<CancellationToken,Task<Boolean>>
Delegát, který testuje, zda operace byla úspěšná, i když byla vyvolána výjimka při potvrzení transakce.
- isolationLevel
- IsolationLevel
Úroveň izolace, která se má použít pro transakci.
- cancellationToken
- CancellationToken
Token zrušení použitý ke zrušení operace opakování, ale ne operace, které jsou již spuštěny nebo které již byly úspěšně dokončeny.
Návraty
Úloha, která se spustí k dokončení, pokud se původní úkol úspěšně dokončí (buď poprvé, nebo po opakování přechodných selhání). Pokud úloha selže s chybou, která není přechodná nebo je dosaženo limitu opakování, vrácený úkol bude chybný a výjimka musí být zjištěna.
Výjimky
Operace nebyla úspěšná po nakonfigurovaném počtu opakování.
Pokud je zrušena CancellationToken .
Poznámky
Další informace a příklady najdete v tématu Odolnost připojení a opakování databází .
Platí pro
ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, IsolationLevel, CancellationToken)
Provede zadanou asynchronní operaci a vrátí výsledek. Umožňuje zkontrolovat, zda transakce byla vrácena zpět, pokud dojde k chybě během potvrzení.
public static System.Threading.Tasks.Task<TResult> ExecuteInTransactionAsync<TState,TResult>(this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, TState state, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<bool>> verifySucceeded, System.Data.IsolationLevel isolationLevel, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * 'State * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * System.Data.IsolationLevel * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteInTransactionAsync(Of TState, TResult) (strategy As IExecutionStrategy, state As TState, operation As Func(Of TState, CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of TState, CancellationToken, Task(Of Boolean)), isolationLevel As IsolationLevel, Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)
Parametry typu
- TState
Typ stavu.
- TResult
Typ výsledku vráceného Task<TResult> uživatelem operation.
Parametry
- strategy
- IExecutionStrategy
Strategie, která se bude používat pro provádění.
- state
- TState
Stav, který bude předán operaci.
- operation
- Func<TState,CancellationToken,Task<TResult>>
Funkce, která vrací spuštěný úkol typu TResult.
- verifySucceeded
- Func<TState,CancellationToken,Task<Boolean>>
Delegát, který testuje, zda operace byla úspěšná, i když byla vyvolána výjimka při potvrzení transakce.
- isolationLevel
- IsolationLevel
Úroveň izolace, která se má použít pro transakci.
- cancellationToken
- CancellationToken
Token zrušení použitý ke zrušení operace opakování, ale ne operace, které jsou již spuštěny nebo které již byly úspěšně dokončeny.
Návraty
Úloha, která se spustí k dokončení, pokud se původní úkol úspěšně dokončí (buď poprvé, nebo po opakování přechodných selhání). Pokud úloha selže s chybou, která není přechodná nebo je dosaženo limitu opakování, vrácený úkol bude chybný a výjimka musí být zjištěna.
Výjimky
Operace nebyla úspěšná po nakonfigurovaném počtu opakování.
Pokud je zrušena CancellationToken .
Poznámky
Další informace a příklady najdete v tématu Odolnost připojení a opakování databází .
Platí pro
ExecuteInTransactionAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,CancellationToken, Task<Boolean>>, IsolationLevel, CancellationToken)
Provede zadanou asynchronní operaci v transakci. Umožňuje zkontrolovat, zda transakce byla vrácena zpět, pokud dojde k chybě během potvrzení.
public static System.Threading.Tasks.Task ExecuteInTransactionAsync<TState>(this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, TState state, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task> operation, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<bool>> verifySucceeded, System.Data.IsolationLevel isolationLevel, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * 'State * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * System.Data.IsolationLevel * System.Threading.CancellationToken -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteInTransactionAsync(Of TState) (strategy As IExecutionStrategy, state As TState, operation As Func(Of TState, CancellationToken, Task), verifySucceeded As Func(Of TState, CancellationToken, Task(Of Boolean)), isolationLevel As IsolationLevel, Optional cancellationToken As CancellationToken = Nothing) As Task
Parametry typu
- TState
Typ stavu.
Parametry
- strategy
- IExecutionStrategy
Strategie, která se bude používat pro provádění.
- state
- TState
Stav, který bude předán operaci.
- operation
- Func<TState,CancellationToken,Task>
Funkce, která vrací spuštěný úkol.
- verifySucceeded
- Func<TState,CancellationToken,Task<Boolean>>
Delegát, který testuje, zda operace byla úspěšná, i když byla vyvolána výjimka při potvrzení transakce.
- isolationLevel
- IsolationLevel
Úroveň izolace, která se má použít pro transakci.
- cancellationToken
- CancellationToken
Token zrušení použitý ke zrušení operace opakování, ale ne operace, které jsou již spuštěny nebo které již byly úspěšně dokončeny.
Návraty
Úloha, která se spustí k dokončení, pokud se původní úkol úspěšně dokončí (buď poprvé, nebo po opakování přechodných selhání). Pokud úloha selže s chybou, která není přechodná nebo je dosaženo limitu opakování, vrácený úkol bude chybný a výjimka musí být zjištěna.
Výjimky
Operace nebyla úspěšná po nakonfigurovaném počtu opakování.
Pokud je zrušena CancellationToken .
Poznámky
Další informace a příklady najdete v tématu Odolnost připojení a opakování databází .