SqlServerRetryingExecutionStrategy Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Una IExecutionStrategy implementación para reintentar ejecuciones con errores en SQL Server.
public class SqlServerRetryingExecutionStrategy : Microsoft.EntityFrameworkCore.Storage.ExecutionStrategy
type SqlServerRetryingExecutionStrategy = class
inherit ExecutionStrategy
Public Class SqlServerRetryingExecutionStrategy
Inherits ExecutionStrategy
- Herencia
Comentarios
Esta estrategia se adapta específicamente a SQL Server (incluida la Azure SQL). Está preconfigurado con números de error para los errores transitorios que se pueden reintentar. También se pueden proporcionar números de error adicionales en los que reintentar.
La duración del servicio es Scoped. Esto significa que cada DbContext instancia usará su propia instancia de este servicio. La implementación puede depender de otros servicios registrados con cualquier duración. La implementación no necesita ser segura para subprocesos.
Consulte Resistencia de conexión y reintentos de base de datos para obtener más información y ejemplos.
Constructores
Campos
DefaultMinDelayThrottling |
Retraso de tiempo mínimo predeterminado entre reintentos para errores de limitación. |
Propiedades
AdditionalErrorNumbers |
Números de error sql adicionales que se deben considerar transitorios. |
Context |
Contexto en el que se invocarán las operaciones. (Heredado de ExecutionStrategy) |
Dependencies |
Dependencias de este servicio. (Heredado de ExecutionStrategy) |
ExceptionsEncountered |
Lista de excepciones que provocaron que la operación se reintentase hasta ahora. (Heredado de ExecutionStrategy) |
Logger |
Registrador para este ExecutionStrategyobjeto . (Heredado de ExecutionStrategy) |
MaxRetryCount |
Número máximo de reintentos. (Heredado de ExecutionStrategy) |
MaxRetryDelay |
El retraso máximo entre los reintentos. (Heredado de ExecutionStrategy) |
Random |
Generador de números pseudoaleatorios que se puede usar para variar el retraso entre reintentos. (Heredado de ExecutionStrategy) |
RetriesOnFailure |
Indica si esto IExecutionStrategy podría reintentar la ejecución después de un error. (Heredado de ExecutionStrategy) |
Métodos
Execute<TState,TResult>(Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>, TState) |
Ejecuta la operación especificada y devuelve el resultado. (Heredado de ExecutionStrategy) |
Execute<TState,TResult>(TState, Func<DbContext,TState,TResult>, Func<DbContext,TState,ExecutionResult<TResult>>) |
Ejecuta la operación especificada y devuelve el resultado. (Heredado de ExecutionStrategy) |
ExecuteAsync<TState,TResult>(Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken,Task<ExecutionResult<TResult>>>, TState, CancellationToken) |
Ejecuta la operación asincrónica especificada y devuelve el resultado. (Heredado de ExecutionStrategy) |
ExecuteAsync<TState,TResult>(TState, Func<DbContext,TState,CancellationToken, Task<TResult>>, Func<DbContext,TState,CancellationToken,Task<ExecutionResult<TResult>>>, CancellationToken) |
Ejecuta la operación asincrónica especificada y devuelve el resultado. (Heredado de ExecutionStrategy) |
ExecuteInTransaction<TState,TResult>(Func<TState,TResult>, Func<TState,Boolean>, TState) |
Ejecuta la operación especificada en una transacción y devuelve el resultado después de confirmarlo. (Heredado de ExecutionStrategy) |
ExecuteInTransactionAsync<TState,TResult>(Func<TState,CancellationToken, Task<TResult>>, Func<TState,CancellationToken,Task<Boolean>>, TState, CancellationToken) |
Ejecuta la operación asincrónica especificada y devuelve el resultado. (Heredado de ExecutionStrategy) |
GetNextDelay(Exception) |
Determina si se debe reintentar la operación y el retraso antes del siguiente intento. |
OnFirstExecution() |
Método al que se llama antes de la primera ejecución de la operación (Heredado de ExecutionStrategy) |
OnRetry() |
Método al que se llama antes de volver a intentar la ejecución de la operación (Heredado de ExecutionStrategy) |
ShouldRetryOn(Exception) |
Determina si la excepción especificada representa un error transitorio que un reintento puede compensar. Se pueden pasar excepciones adicionales al reintento en el constructor. |
ShouldVerifySuccessOn(Exception) |
Determina si se podría producir la excepción especificada después de una ejecución correcta. (Heredado de ExecutionStrategy) |
Métodos de extensión
Execute(IExecutionStrategy, Action) |
Ejecuta la operación especificada. |
Execute<TState>(IExecutionStrategy, TState, Action<TState>) |
Ejecuta la operación especificada. |
Execute<TState>(IExecutionStrategy, Action<TState>, TState) |
Ejecuta la operación especificada. |
Execute<TResult>(IExecutionStrategy, Func<TResult>) |
Ejecuta la operación especificada y devuelve el resultado. |
Execute<TState,TResult>(IExecutionStrategy, TState, Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>) |
Ejecuta la operación especificada y devuelve el resultado. |
Execute<TState,TResult>(IExecutionStrategy, TState, Func<TState,TResult>) |
Ejecuta la operación especificada y devuelve el resultado. |
Execute<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, TState) |
Ejecuta la operación especificada y devuelve el resultado. |
Execute<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, Func<TState,ExecutionResult<TResult>>, TState) |
Obsoletos.
Ejecuta la operación especificada y devuelve el resultado. |
ExecuteAsync(IExecutionStrategy, Func<CancellationToken,Task>, CancellationToken) |
Ejecuta la operación asincrónica especificada. |
ExecuteAsync(IExecutionStrategy, Func<Task>) |
Ejecuta la operación asincrónica especificada. |
ExecuteAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, CancellationToken) |
Ejecuta la operación asincrónica especificada. |
ExecuteAsync<TState>(IExecutionStrategy, TState, Func<TState,Task>) |
Ejecuta la operación asincrónica especificada. |
ExecuteAsync<TState>(IExecutionStrategy, Func<TState,CancellationToken,Task>, TState, CancellationToken) |
Ejecuta la operación asincrónica especificada. |
ExecuteAsync<TState>(IExecutionStrategy, Func<TState,Task>, TState) |
Ejecuta la operación asincrónica especificada. |
ExecuteAsync<TResult>(IExecutionStrategy, Func<CancellationToken,Task<TResult>>, CancellationToken) |
Ejecuta la operación asincrónica especificada y devuelve el resultado. |
ExecuteAsync<TResult>(IExecutionStrategy, Func<Task<TResult>>) |
Ejecuta la operación asincrónica especificada y devuelve el resultado. |
ExecuteAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState, CancellationToken,Task<TResult>>, Func<TState,CancellationToken, Task<ExecutionResult<TResult>>>, CancellationToken) |
Ejecuta la operación asincrónica especificada y devuelve el resultado. |
ExecuteAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, CancellationToken) |
Ejecuta la operación asincrónica especificada y devuelve el resultado. |
ExecuteAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,Task<TResult>>) |
Ejecuta la operación asincrónica especificada y devuelve el resultado. |
ExecuteAsync<TState,TResult>(IExecutionStrategy, Func<TState,CancellationToken,Task<TResult>>, TState, CancellationToken) |
Ejecuta la operación asincrónica especificada y devuelve el resultado. |
ExecuteAsync<TState,TResult>(IExecutionStrategy, Func<TState,Task<TResult>>, TState) |
Ejecuta la operación asincrónica especificada y devuelve el resultado. |
ExecuteInTransaction(IExecutionStrategy, Action, Func<Boolean>) |
Ejecuta la operación especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransaction<TState>(IExecutionStrategy, TState, Action<TState>, Func<TState,Boolean>) |
Ejecuta la operación especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransaction<TResult>(IExecutionStrategy, Func<TResult>, Func<Boolean>) |
Ejecuta la operación especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransaction<TState,TResult>(IExecutionStrategy, TState, Func<TState,TResult>, Func<TState,Boolean>) |
Ejecuta la operación especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransaction<TState,TResult>(IExecutionStrategy, Func<TState,TResult>, Func<TState,Boolean>, TState, DbContext) |
Ejecuta la operación especificada en una transacción y devuelve el resultado después de confirmarlo. |
ExecuteInTransactionAsync(IExecutionStrategy, Func<CancellationToken,Task>, Func<CancellationToken,Task<Boolean>>, CancellationToken) |
Ejecuta la operación asincrónica especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransactionAsync(IExecutionStrategy, Func<Task>, Func<Task<Boolean>>) |
Ejecuta la operación asincrónica especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransactionAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,CancellationToken, Task<Boolean>>, CancellationToken) |
Ejecuta la operación asincrónica especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransactionAsync<TResult>(IExecutionStrategy, Func<CancellationToken, Task<TResult>>, Func<CancellationToken,Task<Boolean>>, CancellationToken) |
Ejecuta la operación asincrónica especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, CancellationToken) |
Ejecuta la operación asincrónica especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, Func<TState,CancellationToken,Task<TResult>>, Func<TState,CancellationToken, Task<Boolean>>, TState, DbContext, CancellationToken) |
Ejecuta la operación asincrónica especificada y devuelve el resultado. |
ExecuteInTransaction(IExecutionStrategy, Action, Func<Boolean>, IsolationLevel) |
Ejecuta la operación especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransaction<TState>(IExecutionStrategy, TState, Action<TState>, Func<TState,Boolean>, IsolationLevel) |
Ejecuta la operación especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransaction<TResult>(IExecutionStrategy, Func<TResult>, Func<Boolean>, IsolationLevel) |
Ejecuta la operación especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransaction<TState,TResult>(IExecutionStrategy, TState, Func<TState,TResult>, Func<TState,Boolean>, IsolationLevel) |
Ejecuta la operación especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransactionAsync(IExecutionStrategy, Func<CancellationToken,Task>, Func<CancellationToken,Task<Boolean>>, IsolationLevel, CancellationToken) |
Ejecuta la operación asincrónica especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransactionAsync(IExecutionStrategy, Func<Task>, Func<Task<Boolean>>, IsolationLevel) |
Ejecuta la operación asincrónica especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransactionAsync<TState>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task>, Func<TState,CancellationToken, Task<Boolean>>, IsolationLevel, CancellationToken) |
Ejecuta la operación asincrónica especificada en una transacción. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransactionAsync<TResult>(IExecutionStrategy, Func<CancellationToken, Task<TResult>>, Func<CancellationToken,Task<Boolean>>, IsolationLevel, CancellationToken) |
Ejecuta la operación asincrónica especificada en una transacción y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |
ExecuteInTransactionAsync<TState,TResult>(IExecutionStrategy, TState, Func<TState,CancellationToken,Task<TResult>>, Func<TState, CancellationToken,Task<Boolean>>, IsolationLevel, CancellationToken) |
Ejecuta la operación asincrónica especificada y devuelve el resultado. Permite comprobar si la transacción se ha revertido si se produce un error durante la confirmación. |