2010-12-10 4 views
1

Ich habe einen Entity Framework-Datenkontext und einen SQL-Befehl, die beide Objekte in derselben Datenbank aktualisieren und einfügen müssen. Entweder müssen beide erfolgreich sein oder ich möchte die Operation rückgängig machen. Dies scheint die perfekte Verwendung von Transaktionen zu sein, aber ich kann nicht herausfinden, wie eine gemeinsame Transaktion zwischen dem SQL-Befehl und dem Entity Framework-Datenkontext, der auf eine SQL Server 2008-Instanz verweist, verwendet werden kann. Weiß jemand, wie man das macht?Wie kann ich den EF-Transaktionsbereich mit einem SQL-Befehl verwenden und beide nur dann committen, wenn beide erfolgreich sind?

Antwort

1

Ich würde annehmen, dass Sie in der Lage sein sollten, beide diese Aktionen in eine TransactionScope-Transaktion nur zu umbrechen und das auszuführen oder das zurückzurollen. Der Server, auf dem Sie diesen Server ausführen, muss wahrscheinlich den Distributed Transaction Coordinator-Dienst unterstützen.

+1

Sie haben Recht. Ich vermisste die Aktivierung von DTC auf dem Server, auf dem ich das ausgeführt habe. Vielen Dank! –

Verwandte Themen