ExecutionStrategyExtensions.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>>)
Provede zadanou asynchronní operaci v transakci. Umožňuje zkontrolovat, jestli byla transakce 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);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<System.Threading.Tasks.Task> * Func<System.Threading.Tasks.Task<bool>> -> System.Threading.Tasks.Task
<Extension()>
Public Function ExecuteInTransactionAsync (strategy As IExecutionStrategy, operation As Func(Of Task), verifySucceeded As Func(Of Task(Of Boolean))) As Task
Parametry
- strategy
- IExecutionStrategy
Strategie, která se použije pro provádění.
Delegát, který testuje, zda operace byla úspěšná, i když byla vyvolána výjimka při potvrzení transakce.
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.
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>>, CancellationToken)
Provede zadanou asynchronní operaci v transakci. Umožňuje zkontrolovat, jestli byla transakce 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.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.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)), Optional cancellationToken As CancellationToken = Nothing) As Task
Parametry
- strategy
- IExecutionStrategy
Strategie, která se použije 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.
- 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.
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
ExecuteInTransactionAsync<TResult>(IExecutionStrategy, Func<CancellationToken, Task<TResult>>, Func<CancellationToken,Task<Boolean>>, CancellationToken)
Provede zadanou asynchronní operaci v transakci a vrátí výsledek. Umožňuje zkontrolovat, jestli byla transakce 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.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.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)), Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)
Parametry typu
- TResult
Typ výsledku vráceného Task<TResult> nástrojem operation
.
Parametry
- strategy
- IExecutionStrategy
Strategie, která se použije 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.
- 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.
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
ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken, Task<Boolean>>, TState, DbContext, CancellationToken)
Provede zadanou asynchronní operaci a vrátí výsledek.
public static System.Threading.Tasks.Task<TResult> ExecuteInTransactionAsync<TState,TResult> (this Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy strategy, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<bool>> verifySucceeded, TState state, Microsoft.EntityFrameworkCore.DbContext context, System.Threading.CancellationToken cancellationToken = default);
static member ExecuteInTransactionAsync : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * 'State * Microsoft.EntityFrameworkCore.DbContext * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
<Extension()>
Public Function ExecuteInTransactionAsync(Of TState, TResult) (strategy As IExecutionStrategy, operation As Func(Of TState, CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of TState, CancellationToken, Task(Of Boolean)), state As TState, context As DbContext, 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
- strategy
- IExecutionStrategy
Strategie, která se použije pro provádění.
- 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.
- state
- TState
Stav, který bude předán operaci.
- context
- DbContext
Kontext, který se použije ke spuštění transakce.
- 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.
Výjimky
Vyvolá se, pokud operace nebyla úspěšná po nakonfigurovaným počtu opakování.
Platí pro
ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, CancellationToken)
Provede zadanou asynchronní operaci v transakci a vrátí výsledek. Umožňuje zkontrolovat, jestli byla transakce 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.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.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)), 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
- strategy
- IExecutionStrategy
Strategie, která se použije 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.
- 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.
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
ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, Func<DbContext,CancellationToken, Task<IDbContextTransaction>>, CancellationToken)
Provede zadanou asynchronní operaci v transakci a vrátí výsledek. Umožňuje zkontrolovat, jestli byla transakce vrácena zpět, pokud dojde k chybě během potvrzení.
public static System.Threading.Tasks.Task<TResult> ExecuteInTransactionAsync<TState,TResult> (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, Func<Microsoft.EntityFrameworkCore.DbContext,System.Threading.CancellationToken,System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.IDbContextTransaction>> beginTransaction, 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>> * Func<Microsoft.EntityFrameworkCore.DbContext, System.Threading.CancellationToken, System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.Storage.IDbContextTransaction>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
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)), beginTransaction As Func(Of DbContext, CancellationToken, Task(Of IDbContextTransaction)), 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
- strategy
- IExecutionStrategy
Strategie, která se použije 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.
- beginTransaction
- Func<DbContext,CancellationToken,Task<IDbContextTransaction>>
Delegát, který zahájí transakci pomocí daného kontextu.
- 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.
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
ExecuteInTransactionAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,CancellationToken, Task<Boolean>>, 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.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.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)), Optional cancellationToken As CancellationToken = Nothing) As Task
Parametry typu
- TState
Typ stavu.
Parametry
- strategy
- IExecutionStrategy
Strategie, která se použije pro provádění.
- state
- TState
Stav, který se předá 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.
- 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.
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 Věnovaném odolnosti připojení a opakovaným pokusům o databázi .
Platí pro
Entity Framework