Udostępnij za pośrednictwem


ExecutionStrategyExtensions.ExecuteInTransactionAsync Metoda

Definicja

Przeciążenia

ExecuteInTransactionAsync(IExecutionStrategy, Func<Task>, Func<Task<Boolean>>)

Wykonuje określoną operację asynchroniczną w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

ExecuteInTransactionAsync(IExecutionStrategy, Func<CancellationToken,Task>, Func<CancellationToken,Task<Boolean>>, CancellationToken)

Wykonuje określoną operację asynchroniczną w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

ExecuteInTransactionAsync<TResult>(IExecutionStrategy, Func<CancellationToken, Task<TResult>>, Func<CancellationToken,Task<Boolean>>, CancellationToken)

Wykonuje określoną operację asynchroniczną w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken, Task<Boolean>>, TState, DbContext, CancellationToken)

Wykonuje określoną operację asynchroniczną i zwraca wynik.

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, CancellationToken)

Wykonuje określoną operację asynchroniczną w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, Func<DbContext,CancellationToken, Task<IDbContextTransaction>>, CancellationToken)

Wykonuje określoną operację asynchroniczną w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

ExecuteInTransactionAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,CancellationToken, Task<Boolean>>, CancellationToken)

Wykonuje określoną operację asynchroniczną w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

ExecuteInTransactionAsync(IExecutionStrategy, Func<Task>, Func<Task<Boolean>>)

Wykonuje określoną operację asynchroniczną w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Strategia, która będzie używana do wykonania.

operation
Func<Task>

Funkcja zwracająca uruchomione zadanie.

verifySucceeded
Func<Task<Boolean>>

Delegat, który sprawdza, czy operacja zakończyła się pomyślnie, mimo że zgłoszono wyjątek podczas zatwierdzania transakcji.

Zwraca

Zadanie, które zostanie uruchomione do ukończenia, jeśli oryginalne zadanie zostanie ukończone pomyślnie (po raz pierwszy lub po ponowieniu próby przejściowych błędów). Jeśli zadanie zakończy się niepowodzeniem z błędem nie przejściowym lub zostanie osiągnięty limit ponawiania prób, zwrócone zadanie zostanie uszkodzone i należy zaobserwować wyjątek.

Wyjątki

Operacja nie powiodła się po skonfigurowanej liczbie ponownych prób.

Uwagi

Aby uzyskać więcej informacji i przykłady, zobacz Odporność połączenia i ponawianie prób bazy danych .

Dotyczy

ExecuteInTransactionAsync(IExecutionStrategy, Func<CancellationToken,Task>, Func<CancellationToken,Task<Boolean>>, CancellationToken)

Wykonuje określoną operację asynchroniczną w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Strategia, która będzie używana do wykonania.

operation
Func<CancellationToken,Task>

Funkcja zwracająca uruchomione zadanie.

verifySucceeded
Func<CancellationToken,Task<Boolean>>

Delegat, który sprawdza, czy operacja zakończyła się pomyślnie, mimo że zgłoszono wyjątek podczas zatwierdzania transakcji.

cancellationToken
CancellationToken

Token anulowania używany do anulowania operacji ponawiania, ale nie operacji, które są już w locie lub które zostały już ukończone pomyślnie.

Zwraca

Zadanie, które zostanie uruchomione do ukończenia, jeśli oryginalne zadanie zostanie ukończone pomyślnie (po raz pierwszy lub po ponowieniu próby przejściowych błędów). Jeśli zadanie zakończy się niepowodzeniem z błędem nie przejściowym lub zostanie osiągnięty limit ponawiania prób, zwrócone zadanie zostanie uszkodzone i należy zaobserwować wyjątek.

Wyjątki

Operacja nie powiodła się po skonfigurowanej liczbie ponownych prób.

Jeśli element CancellationToken zostanie anulowany.

Uwagi

Aby uzyskać więcej informacji i przykłady, zobacz Odporność połączenia i ponawianie prób bazy danych .

Dotyczy

ExecuteInTransactionAsync<TResult>(IExecutionStrategy, Func<CancellationToken, Task<TResult>>, Func<CancellationToken,Task<Boolean>>, CancellationToken)

Wykonuje określoną operację asynchroniczną w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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 wyniku zwrócony Task<TResult> przez operationelement .

Parametry

strategy
IExecutionStrategy

Strategia, która będzie używana do wykonania.

operation
Func<CancellationToken,Task<TResult>>

Funkcja zwracająca uruchomione zadanie typu TResult.

verifySucceeded
Func<CancellationToken,Task<Boolean>>

Delegat, który sprawdza, czy operacja zakończyła się pomyślnie, mimo że zgłoszono wyjątek podczas zatwierdzania transakcji.

cancellationToken
CancellationToken

Token anulowania używany do anulowania operacji ponawiania, ale nie operacji, które są już w locie lub które zostały już ukończone pomyślnie.

Zwraca

Task<TResult>

Zadanie, które zostanie uruchomione do ukończenia, jeśli oryginalne zadanie zostanie ukończone pomyślnie (po raz pierwszy lub po ponowieniu próby przejściowych błędów). Jeśli zadanie zakończy się niepowodzeniem z błędem nie przejściowym lub zostanie osiągnięty limit ponawiania prób, zwrócone zadanie zostanie uszkodzone i należy zaobserwować wyjątek.

Wyjątki

Operacja nie powiodła się po skonfigurowanej liczbie ponownych prób.

Jeśli element CancellationToken zostanie anulowany.

Uwagi

Aby uzyskać więcej informacji i przykłady, zobacz Odporność połączenia i ponawianie prób bazy danych .

Dotyczy

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken, Task<Boolean>>, TState, DbContext, CancellationToken)

Wykonuje określoną operację asynchroniczną i zwraca wynik.

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

TResult

Typ wyniku zwrócony Task<TResult> przez operationelement .

Parametry

strategy
IExecutionStrategy

Strategia, która będzie używana do wykonania.

operation
Func<TState,CancellationToken,Task<TResult>>

Funkcja zwracająca uruchomione zadanie typu TResult.

verifySucceeded
Func<TState,CancellationToken,Task<Boolean>>

Delegat, który sprawdza, czy operacja zakończyła się pomyślnie, mimo że zgłoszono wyjątek podczas zatwierdzania transakcji.

state
TState

Stan, który zostanie przekazany do operacji.

context
DbContext

Kontekst, który będzie używany do uruchomienia transakcji.

cancellationToken
CancellationToken

Token anulowania używany do anulowania operacji ponawiania, ale nie operacji, które są już w locie lub które zostały już ukończone pomyślnie.

Zwraca

Task<TResult>

Zadanie, które zostanie uruchomione do ukończenia, jeśli oryginalne zadanie zostanie ukończone pomyślnie (po raz pierwszy lub po ponowieniu próby przejściowych błędów). Jeśli zadanie zakończy się niepowodzeniem z błędem nie przejściowym lub zostanie osiągnięty limit ponawiania prób, zwrócone zadanie zostanie uszkodzone i należy zaobserwować wyjątek.

Wyjątki

Zgłaszany, jeśli operacja nie powiodła się po skonfigurowanej liczbie ponownych prób.

Dotyczy

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, CancellationToken)

Wykonuje określoną operację asynchroniczną w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

TResult

Typ wyniku zwrócony Task<TResult> przez operationelement .

Parametry

strategy
IExecutionStrategy

Strategia, która będzie używana do wykonania.

state
TState

Stan, który zostanie przekazany do operacji.

operation
Func<TState,CancellationToken,Task<TResult>>

Funkcja zwracająca uruchomione zadanie typu TResult.

verifySucceeded
Func<TState,CancellationToken,Task<Boolean>>

Delegat, który sprawdza, czy operacja zakończyła się pomyślnie, mimo że zgłoszono wyjątek podczas zatwierdzania transakcji.

cancellationToken
CancellationToken

Token anulowania używany do anulowania operacji ponawiania, ale nie operacji, które są już w locie lub które zostały już ukończone pomyślnie.

Zwraca

Task<TResult>

Zadanie, które zostanie uruchomione do ukończenia, jeśli oryginalne zadanie zostanie ukończone pomyślnie (po raz pierwszy lub po ponowieniu próby przejściowych błędów). Jeśli zadanie zakończy się niepowodzeniem z błędem nie przejściowym lub zostanie osiągnięty limit ponawiania prób, zwrócone zadanie zostanie uszkodzone i należy zaobserwować wyjątek.

Wyjątki

Operacja nie powiodła się po skonfigurowanej liczbie ponownych prób.

Jeśli element CancellationToken zostanie anulowany.

Uwagi

Aby uzyskać więcej informacji i przykłady, zobacz Odporność połączenia i ponawianie prób bazy danych .

Dotyczy

ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, Func<DbContext,CancellationToken, Task<IDbContextTransaction>>, CancellationToken)

Wykonuje określoną operację asynchroniczną w transakcji i zwraca wynik. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

TResult

Typ wyniku zwrócony Task<TResult> przez operationelement .

Parametry

strategy
IExecutionStrategy

Strategia, która będzie używana do wykonania.

state
TState

Stan, który zostanie przekazany do operacji.

operation
Func<TState,CancellationToken,Task<TResult>>

Funkcja zwracająca uruchomione zadanie typu TResult.

verifySucceeded
Func<TState,CancellationToken,Task<Boolean>>

Delegat, który sprawdza, czy operacja zakończyła się pomyślnie, mimo że zgłoszono wyjątek podczas zatwierdzania transakcji.

beginTransaction
Func<DbContext,CancellationToken,Task<IDbContextTransaction>>

Delegat rozpoczynający transakcję przy użyciu danego kontekstu.

cancellationToken
CancellationToken

Token anulowania używany do anulowania operacji ponawiania, ale nie operacji, które są już w locie lub które zostały już ukończone pomyślnie.

Zwraca

Task<TResult>

Zadanie, które zostanie uruchomione do ukończenia, jeśli oryginalne zadanie zostanie ukończone pomyślnie (po raz pierwszy lub po ponowieniu próby przejściowych błędów). Jeśli zadanie zakończy się niepowodzeniem z błędem nie przejściowym lub zostanie osiągnięty limit ponawiania prób, zwrócone zadanie zostanie uszkodzone i należy zaobserwować wyjątek.

Wyjątki

Operacja nie powiodła się po skonfigurowanej liczbie ponownych prób.

Jeśli element CancellationToken zostanie anulowany.

Uwagi

Aby uzyskać więcej informacji i przykłady, zobacz Odporność połączenia i ponawianie prób bazy danych .

Dotyczy

ExecuteInTransactionAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,CancellationToken, Task<Boolean>>, CancellationToken)

Wykonuje określoną operację asynchroniczną w transakcji. Umożliwia sprawdzenie, czy transakcja została wycofana, jeśli podczas zatwierdzania wystąpi błąd.

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

Parametry

strategy
IExecutionStrategy

Strategia, która będzie używana do wykonania.

state
TState

Stan, który zostanie przekazany do operacji.

operation
Func<TState,CancellationToken,Task>

Funkcja zwracająca uruchomione zadanie.

verifySucceeded
Func<TState,CancellationToken,Task<Boolean>>

Delegat, który sprawdza, czy operacja zakończyła się pomyślnie, mimo że zgłoszono wyjątek podczas zatwierdzania transakcji.

cancellationToken
CancellationToken

Token anulowania używany do anulowania operacji ponawiania, ale nie operacji, które są już w locie lub które zostały już ukończone pomyślnie.

Zwraca

Zadanie, które zostanie uruchomione do ukończenia, jeśli oryginalne zadanie zostanie ukończone pomyślnie (po raz pierwszy lub po ponowieniu próby przejściowych błędów). Jeśli zadanie zakończy się niepowodzeniem z błędem nie przejściowym lub zostanie osiągnięty limit ponawiania prób, zwrócone zadanie zostanie uszkodzone i należy zaobserwować wyjątek.

Wyjątki

Operacja nie powiodła się po skonfigurowanej liczbie ponownych prób.

Jeśli element CancellationToken zostanie anulowany.

Uwagi

Aby uzyskać więcej informacji i przykłady, zobacz Odporność połączenia i ponawianie prób bazy danych .

Dotyczy