See Also

DbConnectionBase Class  | DbConnectionBase Members

Language

Visual Basic

C#

Show All

transaction
A reference to an existing System.Transactions.Transaction in which to enlist.
See AlsoLanguagesDevart.Data.UniversalSend comments on this topic.

EnlistTransaction Method

Devart.Common Namespace > DbConnectionBase Class : EnlistTransaction Method (DbConnectionBase)

Enlists in the specified transaction.

[Visual Basic]
Overrides Public Sub EnlistTransaction( _    ByVal transaction As Transaction _ )
[C#]
public override void EnlistTransaction(    Transaction transaction );

Parameters

transaction
A reference to an existing System.Transactions.Transaction in which to enlist.

Remarks

Once a connection is explicitly enlisted in a distributed transaction, it cannot be unenlisted or enlisted in another transaction until the first transaction finishes.

Example

These samples demonstrate usage of Devart.Data.Universal.UniConnection.EnlistTransaction.

[C#] 

UniversalCommand1.Connection=UniversalConnection1; 
using (TransactionScope transScope = new TransactionScope()) { 
 UniversalConnection1.Open(); 
 UniversalCommand1.ExecuteNonQuery(); 
 transScope.Complete(); 

UniversalConnection1.Close(); 
 
- or - 
 
UniversalCommand1.Connection=UniversalConnection1; 
UniversalConnection1.Open(); 
using (TransactionScope transScope = new TransactionScope()) { 
 UniversalConnection1.EnlistTransaction(Transaction.Current); 
 UniversalCommand1.ExecuteNonQuery(); 
 transScope.Complete(); 

UniversalConnection1.Close(); 
 
- or - 
 
CommittableTransaction cmtTx = new CommittableTransaction(); 
UniversalConnection1.Open(); 
UniversalConnection1.EnlistTransaction(cmtTx); 
UniversalCommand1.ExecuteNonQuery(); 
UniversalConnection1.Close(); 

[Visual Basic] 

Me.UniversalCommand1.Connection = Me.UniversalConnection1
Using transScope = New Transactions.TransactionScope
  Me.UniversalConnection1.Open()
  Me.UniversalCommand1.ExecuteNonQuery()
  transScope.Complete()
End Using
Me.UniversalConnection1.Close()

- or -

Me.UniversalCommand1.Connection = Me.UniversalConnection1
Me.UniversalConnection1.Open()
Using transScope = New Transactions.TransactionScope
  Me.UniversalConnection1.EnlistTransaction(Transactions.Transaction.Current)
  Me.UniversalCommand1.ExecuteNonQuery()
  transScope.Complete()
End Using
Me.UniversalConnection1.Close()

- or -

Dim cmtTx As New Transactions.CommittableTransaction
Me.UniversalConnection1.Open()
Me.UniversalConnection1.EnlistTransaction(cmtTx)
Me.UniversalCommand1.ExecuteNonQuery()
Me.UniversalConnection1.Close()

See Also

DbConnectionBase Class  | DbConnectionBase Members

 

 


© 2002 - 2013 Devart. All Rights Reserved.