Condividi tramite


SqlServerRetryingExecutionStrategy Classe

Definizione

Implementazione IExecutionStrategy per la ripetizione di esecuzioni non riuscite in SQL Server.

public class SqlServerRetryingExecutionStrategy : Microsoft.EntityFrameworkCore.Storage.ExecutionStrategy
type SqlServerRetryingExecutionStrategy = class
    inherit ExecutionStrategy
Public Class SqlServerRetryingExecutionStrategy
Inherits ExecutionStrategy
Ereditarietà
SqlServerRetryingExecutionStrategy

Commenti

Questa strategia è specificamente personalizzata per SQL Server (incluso Azure SQL). È preconfigurato con numeri di errore per gli errori temporanei che possono essere ritentati. È anche possibile specificare numeri di errore aggiuntivi per riprovare.

La durata del servizio è Scoped. Ciò significa che ogni DbContext istanza userà la propria istanza di questo servizio. L'implementazione può dipendere da altri servizi registrati con qualsiasi durata. L'implementazione non deve essere thread-safe.

Per altre informazioni ed esempi, vedere Resilienza della connessione e tentativi di database .

Costruttori

SqlServerRetryingExecutionStrategy(DbContext, Int32, TimeSpan, ICollection<Int32>)

Crea una nuova istanza di SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(DbContext, Int32, TimeSpan, IEnumerable<Int32>)

Crea una nuova istanza di SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(DbContext, Int32)

Crea una nuova istanza di SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(DbContext)

Crea una nuova istanza di SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyContext, Int32, TimeSpan, ICollection<Int32>)

Crea una nuova istanza di SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyContext, Int32)

Crea una nuova istanza di SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyContext)

Crea una nuova istanza di SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies, IEnumerable<Int32>)

Crea una nuova istanza di SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies, Int32, TimeSpan, ICollection<Int32>)

Crea una nuova istanza di SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies, Int32, TimeSpan, IEnumerable<Int32>)

Crea una nuova istanza di SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies, Int32)

Crea una nuova istanza di SqlServerRetryingExecutionStrategy.

SqlServerRetryingExecutionStrategy(ExecutionStrategyDependencies)

Crea una nuova istanza di SqlServerRetryingExecutionStrategy.

Campi

DefaultMinDelayThrottling

Ritardo minimo di tempo predefinito tra i tentativi per gli errori di limitazione.

Proprietà

AdditionalErrorNumbers

Numeri di errore SQL aggiuntivi che devono essere considerati temporanei.

Context

Contesto in cui verranno richiamate le operazioni.

(Ereditato da ExecutionStrategy)
Dependencies

Dipendenze per questo servizio.

(Ereditato da ExecutionStrategy)
ExceptionsEncountered

Elenco di eccezioni che hanno causato il nuovo tentativo dell'operazione finora.

(Ereditato da ExecutionStrategy)
Logger

Logger per questo ExecutionStrategyoggetto .

(Ereditato da ExecutionStrategy)
MaxRetryCount

Il massimi numero di tentativi.

(Ereditato da ExecutionStrategy)
MaxRetryDelay

Ritardo massimo tra i tentativi.

(Ereditato da ExecutionStrategy)
Random

Generatore di numeri pseudo-casuali che può essere utilizzato per variare il ritardo tra i tentativi.

(Ereditato da ExecutionStrategy)
RetriesOnFailure

Indica se questo IExecutionStrategy potrebbe ripetere l'esecuzione dopo un errore.

(Ereditato da ExecutionStrategy)

Metodi

Execute<TState,TResult>(Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>, TState)

Esegue l'operazione specificata e restituisce il risultato.

(Ereditato da ExecutionStrategy)
Execute<TState,TResult>(TState, Func<DbContext,TState,TResult>, Func<DbContext,TState,ExecutionResult<TResult>>)

Esegue l'operazione specificata e restituisce il risultato.

(Ereditato da ExecutionStrategy)
ExecuteAsync<TState,TResult>(Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken,Task<ExecutionResult<TResult>>>, TState, CancellationToken)

Esegue l'operazione asincrona specificata e restituisce il risultato.

(Ereditato da ExecutionStrategy)
ExecuteAsync<TState,TResult>(TState, Func<DbContext,TState,CancellationToken, Task<TResult>>, Func<DbContext,TState,CancellationToken,Task<ExecutionResult<TResult>>>, CancellationToken)

Esegue l'operazione asincrona specificata e restituisce il risultato.

(Ereditato da ExecutionStrategy)
ExecuteInTransaction<TState,TResult>(Func<TState,TResult>, Func<TState,Boolean>, TState)

Esegue l'operazione specificata in una transazione e restituisce il risultato dopo il commit.

(Ereditato da ExecutionStrategy)
ExecuteInTransactionAsync<TState,TResult>(Func<TState,CancellationToken, Task<TResult>>, Func<TState,CancellationToken,Task<Boolean>>, TState, CancellationToken)

Esegue l'operazione asincrona specificata e restituisce il risultato.

(Ereditato da ExecutionStrategy)
GetNextDelay(Exception)

Determina se l'operazione deve essere ritentata e il ritardo prima del tentativo successivo.

OnFirstExecution()

Metodo chiamato prima della prima esecuzione dell'operazione

(Ereditato da ExecutionStrategy)
OnRetry()

Metodo chiamato prima di ripetere l'esecuzione dell'operazione

(Ereditato da ExecutionStrategy)
ShouldRetryOn(Exception)

Determina se l'eccezione specificata rappresenta un errore temporaneo che può essere compensato da un nuovo tentativo. È possibile passare eccezioni aggiuntive per riprovare al costruttore.

ShouldVerifySuccessOn(Exception)

Determina se l'eccezione specificata può essere generata dopo un'esecuzione riuscita.

(Ereditato da ExecutionStrategy)

Metodi di estensione

Execute(IExecutionStrategy, Action)

Esegue l'operazione specificata.

Execute<TState>(IExecutionStrategy, TState, Action<TState>)

Esegue l'operazione specificata.

Execute<TState>(IExecutionStrategy, Action<TState>, TState)

Esegue l'operazione specificata.

Execute<TResult>(IExecutionStrategy, Func<TResult>)

Esegue l'operazione specificata e restituisce il risultato.

Execute<TState,TResult>(IExecutionStrategy, TState, Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>)

Esegue l'operazione specificata e restituisce il risultato.

Execute<TState,TResult>(IExecutionStrategy, TState, Func<TState,TResult>)

Esegue l'operazione specificata e restituisce il risultato.

Execute<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, TState)

Esegue l'operazione specificata e restituisce il risultato.

Execute<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>, TState)
Obsoleti.

Esegue l'operazione specificata e restituisce il risultato.

ExecuteAsync(IExecutionStrategy, Func<CancellationToken,Task>, CancellationToken)

Esegue l'operazione asincrona specificata.

ExecuteAsync(IExecutionStrategy, Func<Task>)

Esegue l'operazione asincrona specificata.

ExecuteAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, CancellationToken)

Esegue l'operazione asincrona specificata.

ExecuteAsync<TState>(IExecutionStrategy, TState, Func<TState,Task>)

Esegue l'operazione asincrona specificata.

ExecuteAsync<TState>(IExecutionStrategy, Func<TState,CancellationToken,Task>, TState, CancellationToken)

Esegue l'operazione asincrona specificata.

ExecuteAsync<TState>(IExecutionStrategy, Func<TState,Task>, TState)

Esegue l'operazione asincrona specificata.

ExecuteAsync<TResult>(IExecutionStrategy, Func<CancellationToken,Task<TResult>>, CancellationToken)

Esegue l'operazione asincrona specificata e restituisce il risultato.

ExecuteAsync<TResult>(IExecutionStrategy, Func<Task<TResult>>)

Esegue l'operazione asincrona specificata e restituisce il risultato.

ExecuteAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState, CancellationToken,Task<TResult>>, Func<TState,CancellationToken, Task<ExecutionResult<TResult>>>, CancellationToken)

Esegue l'operazione asincrona specificata e restituisce il risultato.

ExecuteAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, CancellationToken)

Esegue l'operazione asincrona specificata e restituisce il risultato.

ExecuteAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,Task<TResult>>)

Esegue l'operazione asincrona specificata e restituisce il risultato.

ExecuteAsync<TState,TResult>(IExecutionStrategy, Func<TState,CancellationToken,Task<TResult>>, TState, CancellationToken)

Esegue l'operazione asincrona specificata e restituisce il risultato.

ExecuteAsync<TState,TResult>(IExecutionStrategy, Func<TState,Task<TResult>>, TState)

Esegue l'operazione asincrona specificata e restituisce il risultato.

ExecuteInTransaction(IExecutionStrategy, Action, Func<Boolean>)

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

ExecuteInTransaction<TState>(IExecutionStrategy, TState, Action<TState>, Func<TState,Boolean>)

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

ExecuteInTransaction<TResult>(IExecutionStrategy, Func<TResult>, Func<Boolean>)

Esegue l'operazione 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.

ExecuteInTransaction<TState,TResult>(IExecutionStrategy, TState, Func<TState,TResult>, Func<TState,Boolean>)

Esegue l'operazione 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.

ExecuteInTransaction<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, Func<TState,Boolean>, TState, DbContext)

Esegue l'operazione specificata in una transazione e restituisce il risultato dopo 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(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<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<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, 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, Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken, Task<Boolean>>, TState, DbContext, CancellationToken)

Esegue l'operazione asincrona specificata e restituisce il risultato.

ExecuteInTransaction(IExecutionStrategy, Action, Func<Boolean>, IsolationLevel)

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

ExecuteInTransaction<TState>(IExecutionStrategy, TState, Action<TState>, Func<TState,Boolean>, IsolationLevel)

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

ExecuteInTransaction<TResult>(IExecutionStrategy, Func<TResult>, Func<Boolean>, IsolationLevel)

Esegue l'operazione 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.

ExecuteInTransaction<TState,TResult>(IExecutionStrategy, TState, Func<TState,TResult>, Func<TState,Boolean>, IsolationLevel)

Esegue l'operazione 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(IExecutionStrategy, Func<CancellationToken,Task>, Func<CancellationToken,Task<Boolean>>, IsolationLevel, 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>>, IsolationLevel)

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<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,CancellationToken, Task<Boolean>>, IsolationLevel, 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>>, IsolationLevel, 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>>, IsolationLevel, CancellationToken)

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

Si applica a