Sdílet prostřednictvím


ExecutionStrategyExtensions.ExecuteInTransactionAsync Metoda

Definice

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í.

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í.

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í.

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.

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í.

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í.

ExecuteInTransactionAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,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í.

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í.

operation
Func<Task>

Funkce, která vrací spuštěný úkol.

verifySucceeded
Func<Task<Boolean>>

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í.

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

Task<TResult>

Ú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<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

Task<TResult>

Ú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

Task<TResult>

Ú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<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

Task<TResult>

Ú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<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í.

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