Partager via


ExecutionStrategy Classe

Définition

Classe de base pour IExecutionStrategy les implémentations.

public abstract class ExecutionStrategy : Microsoft.EntityFrameworkCore.Storage.IExecutionStrategy
type ExecutionStrategy = class
    interface IExecutionStrategy
Public MustInherit Class ExecutionStrategy
Implements IExecutionStrategy
Héritage
ExecutionStrategy
Dérivé
Implémente

Remarques

La durée de vie du service est Scoped. Cela signifie que chaque DbContext instance utilisera ses propres instance de ce service. L’implémentation peut dépendre d’autres services inscrits avec n’importe quelle durée de vie. L’implémentation n’a pas besoin d’être thread-safe.

Pour plus d’informations et d’exemples, consultez Résilience de connexion et nouvelles tentatives de base de données.

Constructeurs

ExecutionStrategy(DbContext, Int32, TimeSpan)

Crée une instance de ExecutionStrategy.

ExecutionStrategy(ExecutionStrategyContext, Int32, TimeSpan)

Crée une instance de ExecutionStrategy.

ExecutionStrategy(ExecutionStrategyDependencies, Int32, TimeSpan)

Crée une instance de ExecutionStrategy.

Champs

DefaultMaxDelay

Le délai de temps maximal par défaut entre les nouvelles tentatives doit être non négatif.

DefaultMaxRetryCount

Nombre par défaut de nouvelles tentatives.

Propriétés

Context

Contexte dans lequel les opérations seront appelées.

Current

Obtient ou définit la stratégie en cours d’exécution. Tous les appels imbriqués seront gérés par la stratégie la plus externe.

Dependencies

Dépendances pour ce service.

ExceptionsEncountered

Liste des exceptions qui ont provoqué une nouvelle tentative de l’opération jusqu’à présent.

Logger

Enregistreur d’événements pour ce ExecutionStrategy.

MaxRetryCount

Nombre maximal de nouvelles tentatives.

MaxRetryDelay

Délai maximal entre les nouvelles tentatives.

Random

Générateur de nombres pseudo-aléatoires qui peut être utilisé pour faire varier le délai entre les nouvelles tentatives.

RetriesOnFailure

Indique si cela IExecutionStrategy peut réessayer l’exécution après un échec.

Suspended
Obsolète.

Indique si la stratégie est suspendue. La stratégie est généralement suspendue pendant l’exécution pour éviter l’exécution récursive à partir d’opérations imbriquées.

Méthodes

CallOnWrappedException<TResult>(Exception, Func<Exception,TResult>)

Récursivement obtient InnerException à partir de exception tant qu’il s’agit d’une exception créée par Entity Framework et appelle exceptionHandler sur la plus interne.

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

Exécute l’opération spécifiée et retourne le résultat.

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

Exécute l’opération spécifiée et retourne le résultat.

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

Exécute l’opération asynchrone spécifiée et retourne le résultat.

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

Exécute l’opération asynchrone spécifiée et retourne le résultat.

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

Exécute l’opération spécifiée dans une transaction et retourne le résultat après la validation de celle-ci.

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

Exécute l’opération asynchrone spécifiée et retourne le résultat.

GetNextDelay(Exception)

Détermine si l’opération doit être retentée et le délai avant la prochaine tentative.

OnFirstExecution()

Méthode appelée avant l’exécution de la première opération

OnRetry()

Méthode appelée avant de réessayer l’exécution de l’opération

ShouldRetryOn(Exception)

Détermine si l’exception spécifiée représente un échec temporaire qui peut être compensé par une nouvelle tentative.

ShouldVerifySuccessOn(Exception)

Détermine si l’exception spécifiée peut être levée après une exécution réussie.

Méthodes d’extension

Execute(IExecutionStrategy, Action)

Exécute l’opération spécifiée.

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

Exécute l’opération spécifiée.

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

Exécute l’opération spécifiée.

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

Exécute l’opération spécifiée et retourne le résultat.

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

Exécute l’opération spécifiée et retourne le résultat.

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

Exécute l’opération spécifiée et retourne le résultat.

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

Exécute l’opération spécifiée et retourne le résultat.

Execute<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>, TState)
Obsolète.

Exécute l’opération spécifiée et retourne le résultat.

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

Exécute l’opération asynchrone spécifiée.

ExecuteAsync(IExecutionStrategy, Func<Task>)

Exécute l’opération asynchrone spécifiée.

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

Exécute l’opération asynchrone spécifiée.

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

Exécute l’opération asynchrone spécifiée.

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

Exécute l’opération asynchrone spécifiée.

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

Exécute l’opération asynchrone spécifiée.

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

Exécute l’opération asynchrone spécifiée et retourne le résultat.

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

Exécute l’opération asynchrone spécifiée et retourne le résultat.

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

Exécute l’opération asynchrone spécifiée et retourne le résultat.

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

Exécute l’opération asynchrone spécifiée et retourne le résultat.

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

Exécute l’opération asynchrone spécifiée et retourne le résultat.

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

Exécute l’opération asynchrone spécifiée et retourne le résultat.

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

Exécute l’opération asynchrone spécifiée et retourne le résultat.

ExecuteInTransaction(IExecutionStrategy, Action, Func<Boolean>)

Exécute l’opération spécifiée dans une transaction. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération spécifiée dans une transaction. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération spécifiée dans une transaction et retourne le résultat. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération spécifiée dans une transaction et retourne le résultat. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération spécifiée dans une transaction et retourne le résultat après la validation de celle-ci.

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

Exécute l’opération asynchrone spécifiée dans une transaction. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération asynchrone spécifiée dans une transaction. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération asynchrone spécifiée dans une transaction. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération asynchrone spécifiée dans une transaction et retourne le résultat. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération asynchrone spécifiée dans une transaction et retourne le résultat. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération asynchrone spécifiée et retourne le résultat.

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

Exécute l’opération spécifiée dans une transaction. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération spécifiée dans une transaction. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération spécifiée dans une transaction et retourne le résultat. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération spécifiée dans une transaction et retourne le résultat. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération asynchrone spécifiée dans une transaction. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération asynchrone spécifiée dans une transaction. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération asynchrone spécifiée dans une transaction. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération asynchrone spécifiée dans une transaction et retourne le résultat. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

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

Exécute l’opération asynchrone spécifiée et retourne le résultat. Permet de case activée si la transaction a été restaurée si une erreur se produit pendant la validation.

S’applique à