Share via


ExecutionStrategyExtensions.ExecuteInTransactionAsync Metodo

Definizione

Overload

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

Esegue l'operazione asincrona specificata in una transazione. Consente di verificare se è stato eseguito il rollback della transazione se si verifica un errore durante il commit.

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

Esegue l'operazione asincrona specificata in una transazione. Consente di verificare se è stato eseguito il rollback della transazione se si verifica un errore durante il commit.

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

Esegue l'operazione asincrona specificata in una transazione e restituisce il risultato. Consente di verificare se è stato eseguito il rollback della transazione se si verifica un errore durante il commit.

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

Esegue l'operazione asincrona specificata e restituisce il risultato.

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

Esegue l'operazione asincrona specificata in una transazione e restituisce il risultato. Consente di verificare se è stato eseguito il rollback della transazione se si verifica un errore durante il commit.

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

Esegue l'operazione asincrona specificata in una transazione e restituisce il risultato. Consente di verificare se è stato eseguito il rollback della transazione se si verifica un errore durante il commit.

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

Esegue l'operazione asincrona specificata in una transazione. Consente di verificare se è stato eseguito il rollback della transazione se si verifica un errore durante il commit.

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

Esegue l'operazione asincrona specificata in una transazione. Consente di verificare se è stato eseguito il rollback della transazione se si verifica un errore durante il commit.

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

Parametri

strategy
IExecutionStrategy

Strategia che verrà usata per l'esecuzione.

operation
Func<Task>

Funzione che restituisce un'attività avviata.

verifySucceeded
Func<Task<Boolean>>

Delegato che verifica se l'operazione è riuscita anche se è stata generata un'eccezione quando è stato eseguito il commit della transazione.

Restituisce

Attività che verrà eseguita fino al completamento se l'attività originale viene completata correttamente (la prima volta o dopo aver rieseguito errori temporanei). Se l'attività ha esito negativo con un errore non temporaneo o viene raggiunto il limite di tentativi, l'attività restituita verrà interrotta e l'eccezione deve essere osservata.

Eccezioni

L'operazione non è riuscita dopo il numero di tentativi configurato.

Commenti

Per altre informazioni ed esempi, vedere Resilienza delle connessioni e tentativi di database .

Si applica a

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

Esegue l'operazione asincrona specificata in una transazione. Consente di verificare se è stato eseguito il rollback della transazione se si verifica un errore durante il commit.

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

Parametri

strategy
IExecutionStrategy

Strategia che verrà usata per l'esecuzione.

operation
Func<CancellationToken,Task>

Funzione che restituisce un'attività avviata.

verifySucceeded
Func<CancellationToken,Task<Boolean>>

Delegato che verifica se l'operazione è riuscita anche se è stata generata un'eccezione quando è stato eseguito il commit della transazione.

cancellationToken
CancellationToken

Token di annullamento usato per annullare l'operazione di ripetizione dei tentativi, ma non le operazioni già in esecuzione o già completate correttamente.

Restituisce

Attività che verrà eseguita fino al completamento se l'attività originale viene completata correttamente (la prima volta o dopo aver rieseguito errori temporanei). Se l'attività ha esito negativo con un errore non temporaneo o viene raggiunto il limite di tentativi, l'attività restituita verrà interrotta e l'eccezione deve essere osservata.

Eccezioni

L'operazione non è riuscita dopo il numero di tentativi configurato.

Commenti

Per altre informazioni ed esempi, vedere Resilienza delle connessioni e tentativi di database .

Si applica a

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

Esegue l'operazione asincrona specificata in una transazione e restituisce il risultato. Consente di verificare se è stato eseguito il rollback della transazione se si verifica un errore durante il commit.

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)

Parametri di tipo

TResult

Tipo di risultato dell'oggetto Task<TResult> restituito da operation.

Parametri

strategy
IExecutionStrategy

Strategia che verrà usata per l'esecuzione.

operation
Func<CancellationToken,Task<TResult>>

Funzione che restituisce un'attività avviata di tipo TResult.

verifySucceeded
Func<CancellationToken,Task<Boolean>>

Delegato che verifica se l'operazione è riuscita anche se è stata generata un'eccezione quando è stato eseguito il commit della transazione.

cancellationToken
CancellationToken

Token di annullamento usato per annullare l'operazione di ripetizione dei tentativi, ma non le operazioni già in esecuzione o già completate correttamente.

Restituisce

Task<TResult>

Attività che verrà eseguita fino al completamento se l'attività originale viene completata correttamente (la prima volta o dopo aver rieseguito errori temporanei). Se l'attività ha esito negativo con un errore non temporaneo o viene raggiunto il limite di tentativi, l'attività restituita verrà interrotta e l'eccezione deve essere osservata.

Eccezioni

L'operazione non è riuscita dopo il numero di tentativi configurato.

Commenti

Per altre informazioni ed esempi, vedere Resilienza delle connessioni e tentativi di database .

Si applica a

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

Esegue l'operazione asincrona specificata e restituisce il risultato.

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)

Parametri di tipo

TState

Tipo dello stato.

TResult

Tipo di risultato dell'oggetto Task<TResult> restituito da operation.

Parametri

strategy
IExecutionStrategy

Strategia che verrà usata per l'esecuzione.

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

Funzione che restituisce un'attività avviata di tipo TResult.

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

Delegato che verifica se l'operazione è riuscita anche se è stata generata un'eccezione quando è stato eseguito il commit della transazione.

state
TState

Stato che verrà passato all'operazione.

context
DbContext

Contesto che verrà utilizzato per avviare la transazione.

cancellationToken
CancellationToken

Token di annullamento usato per annullare l'operazione di ripetizione dei tentativi, ma non le operazioni già in esecuzione o già completate correttamente.

Restituisce

Task<TResult>

Attività che verrà eseguita fino al completamento se l'attività originale viene completata correttamente (la prima volta o dopo aver rieseguito errori temporanei). Se l'attività ha esito negativo con un errore non temporaneo o viene raggiunto il limite di tentativi, l'attività restituita verrà interrotta e l'eccezione deve essere osservata.

Eccezioni

Generata se l'operazione non è riuscita dopo il numero configurato di tentativi.

Si applica a

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

Esegue l'operazione asincrona specificata in una transazione e restituisce il risultato. Consente di verificare se è stato eseguito il rollback della transazione se si verifica un errore durante il commit.

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)

Parametri di tipo

TState

Tipo dello stato.

TResult

Tipo di risultato dell'oggetto Task<TResult> restituito da operation.

Parametri

strategy
IExecutionStrategy

Strategia che verrà usata per l'esecuzione.

state
TState

Stato che verrà passato all'operazione.

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

Funzione che restituisce un'attività avviata di tipo TResult.

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

Delegato che verifica se l'operazione è riuscita anche se è stata generata un'eccezione quando è stato eseguito il commit della transazione.

cancellationToken
CancellationToken

Token di annullamento usato per annullare l'operazione di ripetizione dei tentativi, ma non le operazioni già in esecuzione o già completate correttamente.

Restituisce

Task<TResult>

Attività che verrà eseguita fino al completamento se l'attività originale viene completata correttamente (la prima volta o dopo aver rieseguito errori temporanei). Se l'attività ha esito negativo con un errore non temporaneo o viene raggiunto il limite di tentativi, l'attività restituita verrà interrotta e l'eccezione deve essere osservata.

Eccezioni

L'operazione non è riuscita dopo il numero di tentativi configurato.

Commenti

Per altre informazioni ed esempi, vedere Resilienza delle connessioni e tentativi di database .

Si applica a

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

Esegue l'operazione asincrona specificata in una transazione e restituisce il risultato. Consente di verificare se è stato eseguito il rollback della transazione se si verifica un errore durante il commit.

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)

Parametri di tipo

TState

Tipo dello stato.

TResult

Tipo di risultato dell'oggetto Task<TResult> restituito da operation.

Parametri

strategy
IExecutionStrategy

Strategia che verrà usata per l'esecuzione.

state
TState

Stato che verrà passato all'operazione.

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

Funzione che restituisce un'attività avviata di tipo TResult.

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

Delegato che verifica se l'operazione è riuscita anche se è stata generata un'eccezione quando è stato eseguito il commit della transazione.

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

Delegato che inizia una transazione usando il contesto specificato.

cancellationToken
CancellationToken

Token di annullamento usato per annullare l'operazione di ripetizione dei tentativi, ma non le operazioni già in esecuzione o già completate correttamente.

Restituisce

Task<TResult>

Attività che verrà eseguita fino al completamento se l'attività originale viene completata correttamente (la prima volta o dopo aver rieseguito errori temporanei). Se l'attività ha esito negativo con un errore non temporaneo o viene raggiunto il limite di tentativi, l'attività restituita verrà interrotta e l'eccezione deve essere osservata.

Eccezioni

L'operazione non è riuscita dopo il numero di tentativi configurato.

Commenti

Per altre informazioni ed esempi, vedere Resilienza delle connessioni e tentativi di database .

Si applica a

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

Esegue l'operazione asincrona specificata in una transazione. Consente di verificare se è stato eseguito il rollback della transazione se si verifica un errore durante il commit.

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

Parametri di tipo

TState

Tipo dello stato.

Parametri

strategy
IExecutionStrategy

Strategia che verrà usata per l'esecuzione.

state
TState

Stato che verrà passato all'operazione.

operation
Func<TState,CancellationToken,Task>

Funzione che restituisce un'attività avviata.

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

Delegato che verifica se l'operazione è riuscita anche se è stata generata un'eccezione quando è stato eseguito il commit della transazione.

cancellationToken
CancellationToken

Token di annullamento usato per annullare l'operazione di ripetizione dei tentativi, ma non le operazioni già in esecuzione o già completate correttamente.

Restituisce

Attività che verrà eseguita fino al completamento se l'attività originale viene completata correttamente (la prima volta o dopo aver rieseguito errori temporanei). Se l'attività ha esito negativo con un errore non temporaneo o viene raggiunto il limite di tentativi, l'attività restituita verrà interrotta e l'eccezione deve essere osservata.

Eccezioni

L'operazione non è riuscita dopo il numero di tentativi configurato.

Commenti

Per altre informazioni ed esempi, vedere Resilienza delle connessioni e tentativi di database .

Si applica a