CommittableTransaction 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í.
Describe una transacción confirmable.
public ref class CommittableTransaction sealed : System::Transactions::Transaction, IAsyncResult
public sealed class CommittableTransaction : System.Transactions.Transaction, IAsyncResult
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public sealed class CommittableTransaction : System.Transactions.Transaction, IAsyncResult
[System.Serializable]
public sealed class CommittableTransaction : System.Transactions.Transaction, IAsyncResult
type CommittableTransaction = class
inherit Transaction
interface IAsyncResult
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type CommittableTransaction = class
inherit Transaction
interface IAsyncResult
[<System.Serializable>]
type CommittableTransaction = class
inherit Transaction
interface IAsyncResult
Public NotInheritable Class CommittableTransaction
Inherits Transaction
Implements IAsyncResult
- Herencia
- Atributos
- Implementaciones
Comentarios
La clase CommittableTransaction
proporciona a las aplicaciones una manera explícita de utilizar una transacción, a diferencia de utilizar implícitamente la clase TransactionScope. A diferencia de la clase TransactionScope, el sistema de escritura de la aplicación ha de llamar específicamente a los métodos Commit y Rollback para confirmar o anular la transacción. Sin embargo, solo el creador de una transacción puede confirmar la transacción. Por lo tanto, las copias de una transacción confirmable obtenida a través del Transaction.Clone método no son confirmables.
Nota
Se recomienda crear transacciones implícitas mediante la TransactionScope clase para que el contexto de transacción ambiente se administre automáticamente. También debe usar las TransactionScope clases y DependentTransaction para las aplicaciones que requieren el uso de la misma transacción en varias llamadas de función o varias llamadas a subprocesos. Para obtener más información sobre este modelo, vea el tema Implementación de una transacción implícita mediante ámbito de transacción .
La creación de un no CommittableTransaction establece automáticamente la transacción ambiente, que es la transacción en la que se ejecuta el código. Puede obtener o establecer la transacción ambiental llamando a la propiedad estática Transaction.Current del objeto global Transaction . Para obtener más información sobre las transacciones ambientales, vea la sección "Managing Transaction Flow using TransactionScopeOption" (Administrar flujo de transacciones mediante TransactionScopeOption) del tema Implementación de una transacción implícita mediante ámbito de transacción . Si no se establece la transacción ambiental, ninguna operación en un administrador de recursos forma parte de esa transacción. Debe establecer y restablecer explícitamente la transacción ambiente para asegurarse de que los administradores de recursos operan en el contexto de transacción correcto.
Hasta que se haya confirmado , CommittableTransaction todos los recursos implicados en la transacción siguen bloqueados.
No se puede reutilizar un objeto CommittableTransaction. Una vez que se ha confirmado o revertido, no se puede volver a usar en una transacción o establecerse como el contexto de transacción ambiente actual.
Constructores
CommittableTransaction() |
Inicializa una nueva instancia de la clase CommittableTransaction. |
CommittableTransaction(TimeSpan) |
Inicializa una nueva instancia de la clase CommittableTransaction con el valor |
CommittableTransaction(TransactionOptions) |
Inicializa una nueva instancia de la clase CommittableTransaction con las opciones de transacción especificadas. |
Propiedades
IsolationLevel |
Obtiene el nivel de aislamiento de la transacción. (Heredado de Transaction) |
PromoterType |
Identifica de forma única el formato del |
TransactionInformation |
Recupera información adicional sobre una transacción. (Heredado de Transaction) |
Métodos
BeginCommit(AsyncCallback, Object) |
Comienza un intento de confirmar la transacción de forma asincrónica. |
Clone() |
Crea un duplicado de la transacción. (Heredado de Transaction) |
Commit() |
Intenta confirmar la transacción. |
DependentClone(DependentCloneOption) |
Crea un clon dependiente de la transacción. (Heredado de Transaction) |
Dispose() |
Libera los recursos que mantiene el objeto. (Heredado de Transaction) |
EndCommit(IAsyncResult) |
Finaliza un intento de confirmar la transacción de forma asincrónica. |
EnlistDurable(Guid, IEnlistmentNotification, EnlistmentOptions) |
Inscribe un administrador de recursos duradero que admite la confirmación en dos fases para participar en una transacción. (Heredado de Transaction) |
EnlistDurable(Guid, ISinglePhaseNotification, EnlistmentOptions) |
Inscribe un administrador de recursos duradero que admite la optimización de confirmación en dos fases para participar en una transacción. (Heredado de Transaction) |
EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification, Guid) |
Inscribe a un administrador de recursos que tiene una transacción interna mediante una Inscripción de fase única promocionable (PSPE). (Heredado de Transaction) |
EnlistPromotableSinglePhase(IPromotableSinglePhaseNotification) |
Inscribe a un administrador de recursos que tiene una transacción interna mediante una Inscripción de fase única promocionable (PSPE). (Heredado de Transaction) |
EnlistVolatile(IEnlistmentNotification, EnlistmentOptions) |
Inscribe un administrador de recursos volátil que admite confirmación en dos fases para participar en una transacción. (Heredado de Transaction) |
EnlistVolatile(ISinglePhaseNotification, EnlistmentOptions) |
Inscribe un administrador de recursos volátil que admite la optimización de confirmación en una fase para participar en una transacción. (Heredado de Transaction) |
Equals(Object) |
Determina si esta transacción y el objeto especificado son iguales. (Heredado de Transaction) |
GetHashCode() |
Devuelve el código hash de esta instancia. (Heredado de Transaction) |
GetPromotedToken() |
Obtiene el |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
PromoteAndEnlistDurable(Guid, IPromotableSinglePhaseNotification, ISinglePhaseNotification, EnlistmentOptions) |
Promueve e inscribe un administrador de recursos duradero que admite la confirmación en dos fases para participar en una transacción. (Heredado de Transaction) |
Rollback() |
Revierte (anula) la transacción. (Heredado de Transaction) |
Rollback(Exception) |
Revierte (anula) la transacción. (Heredado de Transaction) |
SetDistributedTransactionIdentifier(IPromotableSinglePhaseNotification, Guid) |
Establece el identificador de transacción distribuida generado por el promotor que no es de MSDTC. (Heredado de Transaction) |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Eventos
TransactionCompleted |
Indica que se ha finalizado la transacción. (Heredado de Transaction) |
Implementaciones de interfaz explícitas
IAsyncResult.AsyncState |
Obtiene el objeto proporcionado como el último parámetro de la llamada al método BeginCommit(AsyncCallback, Object). |
IAsyncResult.AsyncWaitHandle |
Obtiene WaitHandle que se utiliza para esperar a que finalice una operación asincrónica. |
IAsyncResult.CompletedSynchronously |
Obtiene una indicación que especifica si la operación de confirmación asincrónica ha finalizado sincrónicamente. |
IAsyncResult.IsCompleted |
Obtiene una indicación que especifica si la operación de confirmación asincrónica ha finalizado. |
ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
Obtiene una clase SerializationInfo con los datos necesarios para serializar esta transacción. (Heredado de Transaction) |
Se aplica a
Seguridad para subprocesos
Este tipo es seguro para la ejecución de subprocesos.