Udostępnij za pośrednictwem


ExecutionStrategy.ExecuteInTransactionAsync<TState,TResult> Metoda

Definicja

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

public virtual System.Threading.Tasks.Task<TResult> ExecuteInTransactionAsync<TState,TResult> (Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<TResult>> operation, Func<TState,System.Threading.CancellationToken,System.Threading.Tasks.Task<bool>> verifySucceeded, TState state, System.Threading.CancellationToken cancellationToken = default);
abstract member ExecuteInTransactionAsync : Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * 'State * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
override this.ExecuteInTransactionAsync : Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<'Result>> * Func<'State, System.Threading.CancellationToken, System.Threading.Tasks.Task<bool>> * 'State * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Public Overridable Function ExecuteInTransactionAsync(Of TState, TResult) (operation As Func(Of TState, CancellationToken, Task(Of TResult)), verifySucceeded As Func(Of TState, CancellationToken, Task(Of Boolean)), state As TState, Optional cancellationToken As CancellationToken = Nothing) As Task(Of TResult)

Parametry typu

TState

Typ stanu.

TResult

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

Parametry

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.

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