Compartir a través de


CommitFailureHandler (Clase)

[Esta página es específica de la versión 6 de Entity Framework. La versión más reciente está disponible como el paquete NuGet de Entity Framework. Para más información sobre Entity Framework, consulte msdn.com/es-ES/data/ef].

Representa un controlador de transacciones que permite recuperarse correctamente de errores de conexión durante la confirmación de una transacción almacenando información de seguimiento de la transacción en la base de datos. Se debe registrar mediante SetDefaultTransactionHandler(Func<TransactionHandler>).

Jerarquía de herencia

System.Object
  System.Data.Entity.Infrastructure.TransactionHandler
    System.Data.Entity.Infrastructure.CommitFailureHandler

Espacio de nombres:  System.Data.Entity.Infrastructure
Ensamblado:  EntityFramework (en EntityFramework.dll)

Sintaxis

'Declaración
Public Class CommitFailureHandler _
    Inherits TransactionHandler
'Uso
Dim instance As CommitFailureHandler
public class CommitFailureHandler : TransactionHandler
public ref class CommitFailureHandler : public TransactionHandler
type CommitFailureHandler =  
    class 
        inherit TransactionHandler 
    end
public class CommitFailureHandler extends TransactionHandler

El tipo CommitFailureHandler expone los siguientes miembros.

Constructores

  Name Descripción
Método público CommitFailureHandler() Inicializa una nueva instancia de la clase CommitFailureHandler usando el TransactionContext predeterminado.
Método público CommitFailureHandler(Func<DbConnection, TransactionContext>) Inicializa una nueva instancia de la clase CommitFailureHandler.

Superior

Propiedades

  Name Descripción
Propiedad pública Connection Obtiene la conexión para la que se administrarán las operaciones de transacciones. (Se hereda de TransactionHandler).
Propiedad pública DbContext Obtiene el contexto para el que se administrarán las operaciones de transacciones. (Se hereda de TransactionHandler).
Propiedad protegida IsDisposed Obtiene o establece un valor que indica si este controlador de transacciones se desecha. (Se hereda de TransactionHandler).
Propiedad pública ObjectContext Obtiene el contexto para el que se administrarán las operaciones de transacciones. (Se hereda de TransactionHandler).
Propiedad protegida PruningLimit Obtiene el número de transacciones que se van a ejecutar en el contexto antes de que se limpie el registro de transacciones.El valor predeterminado es 20.
Propiedad protegida TransactionContext Obtiene el contexto de la transacción.

Superior

Métodos

  Name Descripción
Método público BeganTransaction Almacena la información de seguimiento para la nueva transacción en la base de datos en la misma transacción. (Invalida a TransactionHandler.BeganTransaction(DbConnection, BeginTransactionInterceptionContext)).
Método público BeginningTransaction Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público BuildDatabaseInitializationScript Crea el script de inicialización de la base de datos. (Invalida a TransactionHandler.BuildDatabaseInitializationScript()).
Método público ClearTransactionHistory Quita todo el historial de transacciones.
Método público ClearTransactionHistoryAsync() Quita de forma asincrónica todo el historial de transacciones.
Método público ClearTransactionHistoryAsync(CancellationToken) Quita de forma asincrónica todo el historial de transacciones.
Método público Closed Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público Closing Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público Committed Si se produjo una excepción, comprueba esta transacción en la base de datos y vuelve a producirse si no se encuentra.De lo contrario, marca la confirmación como correcta y pone en cola la información de transacción que se va a eliminar. (Invalida a TransactionHandler.Committed(DbTransaction, DbTransactionInterceptionContext)).
Método público Committing Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público ConnectionGetting Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público ConnectionGot Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público ConnectionStringGetting Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público ConnectionStringGot Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público ConnectionStringSet Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público ConnectionStringSetting Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público ConnectionTimeoutGetting Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público ConnectionTimeoutGot Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público DatabaseGetting Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público DatabaseGot Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público DataSourceGetting Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público DataSourceGot Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público Dispose() Libera los recursos usados por este controlador de transacciones. (Se hereda de TransactionHandler).
Método protegido Dispose(Boolean) Libera los recursos usados por este objeto de transacción. (Invalida a TransactionHandler.Dispose(Boolean)).
Método público Disposed(DbTransaction, DbTransactionInterceptionContext) Deja de hacer seguimiento de la transacción que se desechó. (Invalida a TransactionHandler.Disposed(DbTransaction, DbTransactionInterceptionContext)).
Método público Disposed(DbConnection, DbConnectionInterceptionContext) Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público Disposing(DbConnection, DbConnectionInterceptionContext) Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público Disposing(DbTransaction, DbTransactionInterceptionContext) Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público EnlistedTransaction Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público EnlistingTransaction Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público Equals (Se hereda de Object).
Método protegido Finalize (Se hereda de Object).
Método públicoMiembro estático FromContext(DbContext) Obtiene el CommitFailureHandler asociado al context si hay alguno; de lo contrario, devuelve null.
Método públicoMiembro estático FromContext(ObjectContext) Obtiene el CommitFailureHandler asociado al context si hay alguno; de lo contrario, devuelve null.
Método público GetHashCode (Se hereda de Object).
Método público GetType (Se hereda de Object).
Método público Initialize(ObjectContext) Inicializa las propiedades de la instancia. (Invalida a TransactionHandler.Initialize(ObjectContext)).
Método público Initialize(DbContext, DbConnection) Inicializa las propiedades de la instancia. (Invalida a TransactionHandler.Initialize(DbContext, DbConnection)).
Método público IsolationLevelGetting Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público IsolationLevelGot Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método protegido MarkTransactionForPruning Agrega la transacción especificada a la lista de transacciones que se pueden quitar de la base de datos
Método protegido MatchesParentContext Comprueba si el contexto de interceptación especificado contiene el contexto de destino o si la conexión proporcionada es igual que la que usa el contexto de destino. (Se hereda de TransactionHandler).
Método protegido MemberwiseClone (Se hereda de Object).
Método público Opened Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público Opening Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público PruneTransactionHistory() Quita las transacciones marcadas para eliminación.
Método protegido PruneTransactionHistory(Boolean, Boolean) Quita las transacciones marcadas para eliminación si su número supera PruningLimit.
Método público PruneTransactionHistoryAsync() Quita de forma asincrónica las transacciones marcadas para eliminación.
Método público PruneTransactionHistoryAsync(CancellationToken) Quita de forma asincrónica las transacciones marcadas para eliminación.
Método protegido PruneTransactionHistoryAsync(Boolean, Boolean, CancellationToken) Quita las transacciones marcadas para eliminación si su número supera PruningLimit.
Método público RolledBack Deja de hacer seguimiento de la transacción que se revirtió. (Invalida a TransactionHandler.RolledBack(DbTransaction, DbTransactionInterceptionContext)).
Método público RollingBack Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público ServerVersionGetting Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público ServerVersionGot Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público StateGetting Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público StateGot Se puede implementar en una clase derivada. (Se hereda de TransactionHandler).
Método público ToString (Se hereda de Object).

Superior

Comentarios

Este controlador de transacciones usa TransactionContext para almacenar la información de transacción en el esquema usado se puede configurar mediante la creación de una clase derivada de TransactionContext que invalide OnModelCreating(DbModelBuilder) y la pase al constructor de esta clase.

Seguridad para subprocesos

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.

Vea también

Referencia

System.Data.Entity.Infrastructure (Espacio de nombres)