ExecutionStrategy Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Classe di base per IExecutionStrategy le implementazioni.
public abstract class ExecutionStrategy : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy
type ExecutionStrategy = class
interface IExecutionStrategy
Public MustInherit Class ExecutionStrategy
Implements IExecutionStrategy
- Ereditarietà
-
ExecutionStrategy
- Derivato
- Implementazioni
Commenti
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 per qualsiasi durata. L'implementazione non deve essere thread-safe.
Per altre informazioni ed esempi, vedere Resilienza delle connessioni e tentativi di database .
Costruttori
ExecutionStrategy(DbContext, Int32, TimeSpan) |
Crea una nuova istanza di ExecutionStrategy. |
ExecutionStrategy(ExecutionStrategyContext, Int32, TimeSpan) |
Crea una nuova istanza di ExecutionStrategy. |
ExecutionStrategy(ExecutionStrategyDependencies, Int32, TimeSpan) |
Crea una nuova istanza di ExecutionStrategy. |
Campi
DefaultMaxDelay |
Il ritardo massimo di tempo predefinito tra i tentativi deve essere non negativo. |
DefaultMaxRetryCount |
Numero predefinito di tentativi. |
Proprietà
Context |
Contesto in cui verranno richiamate le operazioni. |
Current |
Ottiene o imposta la strategia attualmente in esecuzione. Tutte le chiamate annidate verranno gestite dalla strategia più esterna. |
Dependencies |
Dipendenze per questo servizio. |
ExceptionsEncountered |
Elenco di eccezioni che hanno causato il nuovo tentativo dell'operazione finora. |
Logger |
Logger per questo ExecutionStrategyoggetto . |
MaxRetryCount |
Il massimi numero di tentativi. |
MaxRetryDelay |
Ritardo massimo tra i tentativi. |
Random |
Generatore di numeri pseudo-casuali che può essere utilizzato per variare il ritardo tra i tentativi. |
RetriesOnFailure |
Indica se questo IExecutionStrategy potrebbe ripetere l'esecuzione dopo un errore. |
Suspended |
Obsoleti.
Indica se la strategia è sospesa. La strategia viene in genere sospesa durante l'esecuzione per evitare l'esecuzione ricorsiva da operazioni annidate. |
Metodi
CallOnWrappedException<TResult>(Exception, Func<Exception,TResult>) |
In modo ricorsivo ottiene InnerException da |
Execute<TState,TResult>(Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>, TState) |
Esegue l'operazione specificata e restituisce il risultato. |
Execute<TState,TResult>(TState, Func<DbContext,TState,TResult>, Func<DbContext,TState,ExecutionResult<TResult>>) |
Esegue l'operazione specificata e restituisce il risultato. |
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. |
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. |
ExecuteInTransaction<TState,TResult>(Func<TState,TResult>, Func<TState,Boolean>, TState) |
Esegue l'operazione specificata in una transazione e restituisce il risultato dopo il commit. |
ExecuteInTransactionAsync<TState,TResult>(Func<TState,CancellationToken, Task<TResult>>, Func<TState,CancellationToken,Task<Boolean>>, TState, CancellationToken) |
Esegue l'operazione asincrona specificata e restituisce il risultato. |
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 |
OnRetry() |
Metodo chiamato prima di ripetere l'esecuzione dell'operazione |
ShouldRetryOn(Exception) |
Determina se l'eccezione specificata rappresenta un errore temporaneo che può essere compensato da un nuovo tentativo. |
ShouldVerifySuccessOn(Exception) |
Determina se l'eccezione specificata può essere generata dopo un'esecuzione riuscita. |
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. |