OracleConnection.EnlistDistributedTransaction(ITransaction) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Inscreve-se na transação especificada como uma transação distribuída.
public:
void EnlistDistributedTransaction(System::EnterpriseServices::ITransaction ^ distributedTransaction);
public void EnlistDistributedTransaction(System.EnterpriseServices.ITransaction distributedTransaction);
member this.EnlistDistributedTransaction : System.EnterpriseServices.ITransaction -> unit
Public Sub EnlistDistributedTransaction (distributedTransaction As ITransaction)
Parâmetros
- distributedTransaction
- ITransaction
Uma referência a uma existência ITransaction onde se alistar.
Observações
Novidade no ADO.NET 2.0 é o suporte para usar o método EnlistTransaction para se inscrever numa transação distribuída. Como inscreve uma ligação numa Transaction instância, o EnlistTransaction aproveita a funcionalidade disponível no System.Transactions namespace para gerir transações distribuídas, tornando-o preferível ao EnlistDistributedTransaction para esse fim. Para mais informações, consulte Transações Distribuídas.
Pode continuar a inscrever-se numa transação distribuída existente usando o
EnlistDistributedTransaction método se o alistamento automático estiver desativado. A inscrição numa transação distribuída existente garante que, se a transação for comprometida ou revertida, as modificações feitas pelo código na fonte de dados também sejam comprometidas ou revertidas.
EnlistDistributedTransaction retorna uma exceção se o OracleConnection já tiver iniciado uma transação usando BeginTransaction. No entanto, se a transação for local iniciada na fonte de dados (por exemplo, executando explicitamente a instrução BEGIN TRANSACTION usando um OracleCommand objeto), EnlistDistributedTransaction reverte a transação local e inscreve-se na transação distribuída existente conforme solicitado. Não receberá notificação de que a transação local foi revertida, e é responsável por gerir quaisquer transações locais que não tenham começado a usar BeginTransaction.