Freigeben über


OracleConnection.EnlistDistributedTransaction-Methode

Trägt sich in der angegebenen Transaktion als verteilte Transaktion ein.

Namespace: System.Data.OracleClient
Assembly: System.Data.OracleClient (in system.data.oracleclient.dll)

Syntax

'Declaration
Public Sub EnlistDistributedTransaction ( _
    distributedTransaction As ITransaction _
)
'Usage
Dim instance As OracleConnection
Dim distributedTransaction As ITransaction

instance.EnlistDistributedTransaction(distributedTransaction)
public void EnlistDistributedTransaction (
    ITransaction distributedTransaction
)
public:
void EnlistDistributedTransaction (
    ITransaction^ distributedTransaction
)
public void EnlistDistributedTransaction (
    ITransaction distributedTransaction
)
public function EnlistDistributedTransaction (
    distributedTransaction : ITransaction
)

Parameter

  • distributedTransaction
    Ein Verweis auf eine vorhandene ITransaction, in der die Eintragung vorgenommen werden soll.

Hinweise

ADO.NET 2.0 unterstützt erstmals die Verwendung der EnlistTransaction-Methode, Eintragungen in einer verteilten Transaktion vorzunehmen. Aufgrund der Eintragung einer Verbindung in einer Transaction-Instanz nutzt EnlistTransaction die Vorteile der im System.Transactions-Namespace vorhandenen Funktionalität für die Verwaltung verteilter Transaktionen und wird damit zur bevorzugten Wahl von EnlistDistributedTransaction für diesen Zweck. Weitere Informationen finden Sie unter Durchführen einer verteilten Transaktion.

Sie können in einer vorhandenen verteilten Transaktion mit der EnlistDistributedTransaction-Methode eine Eintragung vornehmen, wenn die automatische Eintragung deaktiviert ist. Das Eintragen in einer vorhandenen verteilten Transaktion stellt sicher, dass bei einem Commit oder Rollback der Transaktion auch die Änderungen einbezogen werden, die vom Code an der Datenquelle vorgenommen wurden.

EnlistDistributedTransaction gibt eine Ausnahme zurück, wenn die OracleConnection bereits mithilfe von BeginTransaction eine Transaktion gestartet hat. Wenn es sich jedoch bei der Transaktion um eine lokale, an der Datenquelle gestartete Transaktion handelt (z. B. durch explizites Ausführen der BEGIN TRANSACTION-Anweisung mithilfe eines OracleCommand-Objekts), führt EnlistDistributedTransaction einen Rollback der lokalen Transaktion aus und nimmt entsprechend den Anforderungen eine Eintragung in der vorhandenen verteilten Transaktion vor. Sie erhalten keine Benachrichtigung über den Rollback der lokalen Transaktion, und Sie sind zuständig für die Verwaltung aller lokalen Transaktionen, die nicht mit BeginTransaction gestartet wurden.

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1

Siehe auch

Referenz

OracleConnection-Klasse
OracleConnection-Member
System.Data.OracleClient-Namespace