Wie verwende ich Transaktionen in Dotnetnuke (mit L2s verwickelt)?
-
07-07-2019 - |
Frage
Ich benutze L2s in meinem Modul. Das Problem tritt auf, während ich die Standard -DNN -Entitäten mit dem gleichen TransactionsCope mit meinem L2S -Datenzugriff verwende. Dann erhalte ich eine DTC -Anforderung, die ich vermeiden möchte.
Wie kann ich die Verbindung/Transaktion sowohl für DNN -Entitäten als auch für meinen L2S -Datenzugriff teilen?
Lösung
Leider, wie gesagt hier - Transaktionen sind derzeit nicht Der starke Teil von DNN (5.1.x), daher sollte L2S -Operationen nicht mit DNN -Kernoperationen verwickelt werden, um Transaktionen Eskalation zu verhindern.
Andere Tipps
Ich weiß nichts über DNN, aber der L2S -DataContext hat einen Konstruktor, der eine SQLConnection (na ja, eine IDBConnection einer SQLConnection) als Parameter annimmt. Wenn Sie also bereits eine Verbindung hergestellt haben, geben Sie sie einfach an den L2S DataContext weiter, wenn Sie eine neue Instanz erstellen.