SqlConnection.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.
Enlists in der angegebenen Transaktion als verteilte Transaktion.
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 einen vorhandenen ITransaction , in dem eine Liste hinzugefügt werden soll.
Hinweise
Sie können die EnlistTransaction Methode zum Auflisten in einer verteilten Transaktion verwenden. Da sie eine Verbindung in einer Transaction Instanz auflistet, nutzt EnlistTransaction die im Namespace für die System.Transactions Verwaltung verteilter Transaktionen verfügbarer Funktionen, wodurch EnlistDistributedTransaction zu diesem Zweck bevorzugt wird. Weitere Informationen finden Sie unter Verteilte Transaktionen.
Sie können eine vorhandene verteilte Transaktion weiterhin mit der EnlistDistributedTransaction-Methode auflisten, wenn die automatische Listenliste deaktiviert ist. Durch das Auflisten in einer vorhandenen verteilten Transaktion wird sichergestellt, dass Änderungen, die vom Code an der Datenquelle vorgenommen wurden, auch zugesichert oder zurückgesetzt werden, wenn die Transaktion zugesichert oder zurückgesetzt wird.
EnlistDistributedTransaction gibt eine Ausnahme zurück, wenn die SqlConnection Transaktion bereits mithilfe BeginTransactioneiner Transaktion gestartet 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 mit einem SqlCommand Objekt), setzt EnlistDistributedTransaction die lokale Transaktion zurück und führt eine Liste in der vorhandenen verteilten Transaktion wie angefordert aus. Sie erhalten keine Benachrichtigung, dass die lokale Transaktion zurückgesetzt wurde und für die Verwaltung lokaler Transaktionen verantwortlich ist, die nicht mit der Verwendung BeginTransactionbegonnen haben.