ExecutionStrategyExtensions.ExecuteInTransactionAsync Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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.
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.
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 operation
element .
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
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 operation
element .
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
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 operation
element .
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
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 operation
element .
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
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 .