【发布时间】:2014-05-19 17:02:33
【问题描述】:
Entity Framework 6 引入了一种使用 BeginTransaction 方法在 DbContext 中支持事务的新方法:
var db = new MyDbContext();
using(var tx = db.Database.BeginTransaction())
{
// update entities
try
{
db.SaveChanges();
tx.Commit();
}
catch(Exception)
{
tx.Rollback();
}
}
方法中的 Rollback() 调用是否必要?如果没有在异常上调用它会发生什么?我知道在使用 TransactionScope 时,它会在处理完事务并且不调用 Complete 时自动回滚。 DbContextTransaction 的行为是否类似?
【问题讨论】:
标签: entity-framework