OleDbConnection.EnlistDistributedTransaction(ITransaction) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Trägt sich in der angegebenen Transaktion als verteilte Transaktion ein.
public:
void EnlistDistributedTransaction(System::EnterpriseServices::ITransaction ^ transaction);
public void EnlistDistributedTransaction (System.EnterpriseServices.ITransaction transaction);
member this.EnlistDistributedTransaction : System.EnterpriseServices.ITransaction -> unit
Public Sub EnlistDistributedTransaction (transaction As ITransaction)
Parameter
- transaction
- ITransaction
Ein Verweis auf eine vorhandene ITransaction, in der die Eintragung vorgenommen werden soll.
Hinweise
Neu in ADO.NET 2.0 ist die Unterstützung für die Verwendung der EnlistTransaction -Methode zum Eintragen in eine verteilte Transaktion. Da EnlistTransaction eine Verbindung in einer Transaction Instanz eingibt, nutzt EnlistTransaction die System.Transactions im Namespace verfügbaren Funktionen zum Verwalten verteilter Transaktionen, sodass sie für diesen Zweck EnlistDistributedTransaction vorzuziehen ist. Weitere Informationen finden Sie unter Verteilte Transaktionen.
Sie können sich weiterhin in eine vorhandene verteilte Transaktion eintragen, indem Sie die -Methode verwenden, wenn die EnlistDistributedTransaction automatische Registrierung deaktiviert ist. Durch das Eintragen in eine vorhandene verteilte Transaktion wird sichergestellt, dass änderungen, die vom Code an der Datenquelle vorgenommen werden, auch committet oder rollback ausgeführt werden, wenn die Transaktion committet oder ein Rollback ausgeführt wird. Weitere Informationen zu verteilten Transaktionen finden Sie unter Verteilte Transaktionen.
EnlistDistributedTransaction gibt eine Ausnahme zurück, wenn mit OleDbConnection bereits eine Transaktion BeginTransactiongestartet wurde. Wenn es sich bei der Transaktion jedoch um eine lokale Transaktion handelt, die an der Datenquelle gestartet wird (z. B. durch explizites Ausführen der BEGIN TRANSACTION-Anweisung mithilfe eines OleDbCommand -Objekts), EnlistDistributedTransaction führt ein Rollback für die lokale Transaktion aus, und führt sie wie angefordert in die vorhandene verteilte Transaktion ein. Sie erhalten keine Benachrichtigung, dass für die lokale Transaktion ein Rollback ausgeführt wurde, und sind für die Verwaltung lokaler Transaktionen verantwortlich, die nicht mit BeginTransactiongestartet wurden.
Gilt für:
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für