Ich habe eine WinForm-Anwendung, die SqlServer CE 3.5 als Datenbank verwendet. Ich verwende typisierte Dataset-Abfragen für db-Operationen. Ich muss Transaktionen für diese Operationen verwenden. Das Problem ist, dass sie auf verschiedene Baugruppen verteilt sind. Meine Frage ist, was soll ich verwenden, um alle in einer einzigen Transaktion auszuführen? Hier ist ein Beispiel-Betrieb:Aktuelle Transaktion übergeben oder DependentClone verwenden?
//transaction should start here
this.QueryDb();
MyOtherAssembly.myClass.QueryDbForSomethingElse();
System.IO.File.Delete(fileName);
//end transaction
Ich denke an TransactionScope
verwenden, aber es wäre in dieser Situation arbeiten? Ich meine würde QueryDbForSomethingElse()
Rollback, wenn File.Delete()
fehlschlägt? Sollte ich Transaction.Current
oder Transaction.Current.DependentClone(DependentCloneOption.BlockCommitUntilComplete)
als Parameter übergeben und eine neue Transaktion dort mit übergebenen Parameter erstellen?
Ich würde mich über irgendwelche Ideen dazu freuen.
Danke. Ich hätte klarer sein und hinzufügen, dass ich keine transaktionale Datei löschen muss und meine Operationen sind nicht Multi-Threading. – dstr