System.Transactions Espacio de nombres

Contiene clases que permiten escribir un administrador de recursos y una aplicación transaccional propios. Concretamente, se puede crear y participar en una transacción (local o distribuida) con uno o varios participantes.

Clases

CommittableTransaction

Describe una transacción confirmable.

DependentTransaction

Describe un clon de una transacción y garantiza que no se puede confirmar la transacción hasta que la aplicación no deja de procesar la transacción. Esta clase no puede heredarse.

DistributedTransactionPermission

Permiso que System.Transactions solicita cuando la administración de una transacción se dirige al Coordinador de transacción distribuida de Microsoft (MS DTC). Esta clase no puede heredarse.

DistributedTransactionPermissionAttribute

Permite acciones de seguridad de DistributedTransactionPermission para que se apliquen al código mediante seguridad declarativa. Esta clase no puede heredarse.

Enlistment

Facilita la comunicación entre un participante de la transacción inscrito y el administrador de transacciones durante la fase final de la transacción.

PreparingEnlistment

Facilita la comunicación entre un participante de la transacción inscrito y el administrador de transacciones durante la fase de preparación de la transacción.

SinglePhaseEnlistment

Proporciona un conjunto de devoluciones de llamada que facilitan la comunicación entre un participante inscrito en la confirmación en una fase y el administrador de transacciones cuando se recibe la notificación SinglePhaseCommit(SinglePhaseEnlistment).

SubordinateTransaction

Representa una transacción que no es raíz y que puede delegarse. Esta clase no puede heredarse.

Transaction

Representa una transacción.

TransactionAbortedException

La excepción que se produce cuando se intenta una operación en una transacción que ya se ha deshecho o se intenta confirmar la transacción y se anula la transacción.

TransactionEventArgs

Proporciona los datos para los eventos de transacción siguientes: DistributedTransactionStarted, TransactionCompleted.

TransactionException

La excepción que se produce cuando intenta trabajar en una transacción que no puede aceptar el nuevo trabajo.

TransactionInDoubtException

La excepción que se produce cuando se intenta una operación en una transacción que está en duda o se intenta confirmar la transacción y ésta pasa al estado de en duda.

TransactionInformation

Proporciona información adicional respecto a una transacción.

TransactionInterop

Facilita la interacción entre System.Transactions y componentes que se han escrito previamente para interactuar con MSDTC, COM+ o System.EnterpriseServices. Esta clase no puede heredarse.

TransactionManager

Contiene métodos utilizados para la administración de transacciones. Esta clase no puede heredarse.

TransactionManagerCommunicationException

La excepción que se produce cuando un administrador de recursos no puede comunicar con el administrador de transacciones.

TransactionPromotionException

La excepción que se produce cuando hay un error en una promoción.

TransactionScope

Crea un bloque de código transaccional. Esta clase no puede heredarse.

Estructuras

TransactionOptions

Contiene información adicional que especifica los comportamientos de la transacción.

Interfaces

IDtcTransaction

Describe una transacción DTC.

IEnlistmentNotification

Describe una interfaz que un administrador de recursos debe implementar para proporcionar devoluciones de llamada de notificación de confirmación en dos fases para el administrador de transacciones al inscribirse para la participación.

IPromotableSinglePhaseNotification

Describe un objeto que actúa como un delegado de confirmación para una transacción no distribuida interna a un administrador de recursos.

ISimpleTransactionSuperior

Representa una transacción que no es una transacción raíz, pero se puede escalar para que sea administrado por MSDTC.

ISinglePhaseNotification

Describe un objeto de recurso que admite la optimización de confirmación de fase única para participar en una transacción.

ITransactionPromoter

Describe una transacción delegada para una transacción existente que se puede elevar para ser administrada por MSDTC cuando se necesita.

Enumeraciones

DependentCloneOption

Controla qué tipo de transacción dependiente se va a crear.

EnlistmentOptions

Determina si el objeto se debería inscribir durante la fase de preparación.

EnterpriseServicesInteropOption

Especifica cómo interactúan las transacciones distribuidas con transacciones COM+.

IsolationLevel

Especifica el nivel de aislamiento de una transacción.

TransactionScopeAsyncFlowOption

Especifica si el flujo de la transacción a través de las continuaciones de subproceso está habilitado para TransactionScope.

TransactionScopeOption

Proporciona opciones adicionales para crear un ámbito de la transacción.

TransactionStatus

Describe el estado actual de una transacción distribuida.

Delegados

HostCurrentTransactionCallback

Proporciona un mecanismo para el entorno de host para proporcionar su propia noción predeterminada de Current.

TransactionCompletedEventHandler

Representa el método que controla el evento TransactionCompleted de Transaction.

TransactionStartedEventHandler

Representa el método que controlará el evento DistributedTransactionStarted de una clase TransactionManager.

Comentarios

La System.Transactions infraestructura simplifica y hace que la programación transaccional sea sencilla y eficaz en toda la plataforma al admitir transacciones iniciadas en SQL Server, ADO.NET, MSMQ y el Coordinador de transacciones distribuidas de Microsoft (MSDTC). Proporciona un modelo de programación explícito basado en la Transaction clase , así como un modelo de programación implícito mediante la clase , en la TransactionScope que la infraestructura administra automáticamente las transacciones. Se recomienda encarecidamente usar el modelo implícito más sencillo para el desarrollo. Para empezar, consulte el tema Implementación de una transacción implícita mediante ámbito de transacción . Para obtener más información sobre cómo escribir una aplicación transaccional, consulte Escritura de una aplicación transaccional.

System.Transactions también proporciona tipos para implementar un administrador de recursos. El administrador de transacciones nativo de la System.Transactions infraestructura permite que los recursos volátiles o una única inscripción de recursos duraderos se confirmen o revierten eficazmente. Para obtener más información sobre la implementación de un administrador de recursos, consulte Implementación de un Administrador de recursos.

El administrador de transacciones también escala de forma transparente las transacciones locales a transacciones distribuidas coordinando a través de un administrador de transacciones basado en disco, como DTC, cuando un administrador de recursos duradero adicional se inscribe con una transacción. La infraestructura System.Transactions proporciona un rendimiento mejorado principalmente de dos formas:

  • Escalación dinámica, lo que significa que la System.Transactions infraestructura solo interactúa con el MSDTC cuando realmente es necesario para una transacción. Esta área se trata en profundidad en el tema Escalación de administración de transacciones .

  • Inscripciones de ascenso, que permiten que un recurso, como una base de datos, asuma la propiedad de la transacción si es la única entidad que participa en la transacción. Más adelante, si es necesario, la System.Transactions infraestructura todavía puede escalar la administración de la transacción a MSDTC. Esto reduce aún más la oportunidad de utilizar MSDTC. Esta área se trata en profundidad en el tema Optimización mediante confirmación de fase única y notificación de fase única promocionable .

Para obtener más información sobre cómo usar el System.Transactions espacio de nombres, vea Procesamiento de transacciones.