codefirst生成数据库想用事务处理,网上有很多不同代码,但实际有的代码不能实现,甚至报错。本人测试了一段代码,能够实现事务,废话不多说,直接上代码。

EFContext db = new EFContext();
DbConnection con = ((IObjectContextAdapter)db).ObjectContext.Connection;
con.Open();
using (var tran = con.BeginTransaction())
{

try{
  //操作数据库
db.SaveChanges();
tran.Commit();

}
catch (Exception ex)
{
tran.Rollback();
}
finally
{
con.Close();
db.Dispose();
}

 posted on 2013-07-08 10:40  HK_Mike  阅读(578)  评论(1)    收藏  举报