1

EF 5 には「BeginTransaction」があることがわかりますが、コミットのコンテキストでインテリセンスを取得できません。CommitTransaction がない場合、BeginTransaction を使用するメリットはありますか? 私が見ているものは正しいですか?

DbContext.BeginTransaction(System.Data.IsolationLevel.RepeatableRead)有効です。上記の対応するステートメントのコミットはありません...これが正しいかどうか誰かに知らせてもらえますか? コミットまたは完了トランザクションがなければ、更新されません....

4

2 に答える 2

5

これがあります:

var transaction = DbContext.Database.Connection.BeginTransaction();
transaction.Commit();

この:

using(var scope = new System.Transactions.TransactionScope()) {
   // do stuff
   scope.Complete();
}
于 2012-10-18T21:35:12.170 に答える
3

DbContextメソッドが含まれている場所を見つけましたBeginTransactionか? そうではありません。トランザクションはSaveChangesメソッド内で自動的に管理されます。自分でトランザクションを管理したい場合は、スコープ内で使用TransactionScopeして呼び出す必要があります。SaveChanges

于 2012-09-16T07:59:47.637 に答える