Partilhar via


System.Transactions Namespace

Contém classes que permitem escrever um aplicativo transacional e o gerenciador de recursos. Especificamente, você pode criar e participar de uma transação (local ou distribuída) com um ou vários participantes.

Classes

CommittableTransaction

Descreve uma transação pode ser confirmada.

DependentTransaction

Descreve um clone de uma transação que assegura que a transação não pode ser confirmada até o aplicativo atingir o estado de repouso com relação ao trabalho na transação. Essa classe não pode ser herdada.

DistributedTransactionPermission

A permissão que é exigida pelo System.Transactions quando o gerenciamento de uma transação é escalonado para o MSDTC. Essa classe não pode ser herdada.

DistributedTransactionPermissionAttribute

Permite que as ações de segurança para DistributedTransactionPermission sejam aplicadas ao código usando a segurança declarativa. Essa classe não pode ser herdada.

Enlistment

Facilita a comunicação entre um participante de transação inscrito e o gerenciador de transação durante a fase final da transação.

PreparingEnlistment

Facilita a comunicação entre um participante da transação inscrita e o gerenciador de transação durante a fase de Preparação da transação.

SinglePhaseEnlistment

Fornece um conjunto de retornos de chamada que facilitam a comunicação entre um participante inscrito na Única confirmação de fase e o gerenciador de transação quando a notificação SinglePhaseCommit(SinglePhaseEnlistment) é recebida.

SubordinateTransaction

Representa uma transação sem raiz que pode ser delegada. Essa classe não pode ser herdada.

Transaction

Representa uma transação.

TransactionAbortedException

A exceção que é lançada quando há a tentativa de uma operação em uma transação que já foi revertida ou quando é feita uma tentativa de confirmar a transação e a transação foi anulada.

TransactionEventArgs

Fornece dados para os seguintes eventos de transação: DistributedTransactionStarted, TransactionCompleted.

TransactionException

A exceção que é lançada durante a tentativa de trabalhar em uma transação que não pode aceitar o novo trabalho.

TransactionInDoubtException

A exceção que é lançada quando é feita uma tentativa de uma operação em uma transação que está em dúvida ou é feita uma tentativa de confirmar a transação e a transação retorna InDoubt.

TransactionInformation

Fornece informações adicionais sobre uma transação.

TransactionInterop

Facilita a interação entre System.Transactions e componentes anteriormente escritos para interagir com o MSDTC, COM+ ou System.EnterpriseServices. Essa classe não pode ser herdada.

TransactionManager

Contém métodos usados para gerenciamento de transações. Essa classe não pode ser herdada.

TransactionManagerCommunicationException

A exceção lançada quando um gerenciador de recursos não pode se comunicar com o gerenciador de transações.

TransactionPromotionException

A exceção lançada quando uma promoção falha.

TransactionScope

Torna um bloco de códigos transacional. Essa classe não pode ser herdada.

Estruturas

TransactionOptions

Contém informações adicionais que especificam comportamentos de transação.

Interfaces

IDtcTransaction

Descreve uma transação de DTC.

IEnlistmentNotification

Descreve uma interface que um gerenciador de recursos deve implementar para fornecer dois retornos de chamada de notificação de confirmação de fase para o gerenciador de transação após a inscrição para a participação.

IPromotableSinglePhaseNotification

Descreve um objeto que atua como um delegado de confirmação de uma transação não distribuída interna de um Resource Manager.

ISimpleTransactionSuperior

Representa uma transação que não é uma transação raiz, mas pode ser escalonada para ser gerenciada pelo MSDTC.

ISinglePhaseNotification

Descreve um objeto de recurso que dá suporte à otimização de confirmação de fase única para participar de uma transação.

ITransactionPromoter

Descreva uma transação delegada para uma transação existente que possa ser escalonada para ser gerenciada pelo MSDTC, quando necessário.

Enumerações

DependentCloneOption

Controla qual tipo de transação dependente criar.

EnlistmentOptions

Determina se o objeto deve ser inscrito durante a fase de preparação.

EnterpriseServicesInteropOption

Especifica como as transações distribuídas interagem com transações COM+.

IsolationLevel

Especifica o nível de isolamento de uma transação.

TransactionScopeAsyncFlowOption

Especifica se o fluxo de transações em continuações de thread está habilitado para TransactionScope.

TransactionScopeOption

Fornece opções adicionais para criar um escopo de transação.

TransactionStatus

Descreve o status atual de uma transação distribuída.

Delegados

HostCurrentTransactionCallback

Fornece um mecanismo para o ambiente de hospedagem fornecer sua própria noção de padrão de Current.

TransactionCompletedEventHandler

Representa o método que manipula o evento TransactionCompleted de uma classe Transaction.

TransactionStartedEventHandler

Representa o método que manipulará o evento de DistributedTransactionStarted de uma classe TransactionManager.

Comentários

A System.Transactions infraestrutura torna a programação transacional simples e eficiente em toda a plataforma, dando suporte a transações iniciadas no SQL Server, no ADO.NET, no MSMQ e no MSDTC (Coordenador de Transações Distribuídas da Microsoft). Ele fornece um modelo de programação explícito com base na Transaction classe , bem como um modelo de programação implícita usando a classe , no qual as TransactionScope transações são gerenciadas automaticamente pela infraestrutura. É altamente recomendável que você use o modelo implícito mais fácil para desenvolvimento. Para começar, consulte o tópico Implementando uma transação implícita usando escopo de transação . Para obter mais informações sobre como escrever um aplicativo transacional, consulte Gravando um aplicativo transacional.

System.Transactions também fornece tipos para implementar um gerenciador de recursos. O gerenciador de transações nativo para a System.Transactions infraestrutura permite que recursos voláteis ou uma única inscrição de recursos duráveis sejam confirmados ou revertidos com eficiência. Para obter mais informações sobre como implementar um gerenciador de recursos, consulte Implementando um Gerenciador de Recursos.

O gerenciador de transações também escalona transações locais de forma transparente para transações distribuídas coordenando por meio de um gerenciador de transações baseado em disco como o DTC, quando um gerenciador de recursos durável adicional se inscreve com uma transação. Há duas maneiras principais que o System.Transactions infra-estrutura proporciona um desempenho aprimorado.

  • Escalonamento dinâmico, o que significa que a System.Transactions infraestrutura envolve apenas o MSDTC quando ele é realmente necessário para uma transação. Essa área é abordada detalhadamente no tópico Escalonamento do Gerenciamento de Transações .

  • Podem ser promovidas inscrições, que permite que um recurso, como um banco de dados, apropriar-se da transação se for a única entidade participa da transação. Posteriormente, se necessário, a System.Transactions infraestrutura ainda poderá escalonar o gerenciamento da transação para o MSDTC. Isso reduz ainda mais a possibilidade de usar o MSDTC. Essa área é abordada detalhadamente no tópico Otimização usando confirmação de fase única e notificação de fase única passível de promoção .

Para obter mais informações sobre como usar o System.Transactions namespace, consulte Processamento de transações.