entity framework db.SaveChangs() 和事务的问题

just_onece 2012-09-28 04:47:11
TransactionOptions tOpt = new TransactionOptions();
tOpt.Timeout = new TimeSpan(0, 15, 0);
using (TransactionScope transaction = new TransactionScope(TransactionScopeOption.Required, tOpt))
{
action1();//存数据到表1
action2();存数据到表2
action3();存数据到表3
//表1,2,3都有db.SaveChanges();
//action 1,2,3为三个方法
transaction.Complete();
}
这个时候1,2 方法没有错,3方法错了,按理应该回滚啊。但是为什么1,2表里面的数据都存进去了啊?求解啊。。。。
...全文
134 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
just_onece 2012-09-29
  • 打赏
  • 举报
回复
可是我看了SaveChanges()定义的方法里面没有SaveChanges(false) 这个false写进去编译会报错的。。。
just_onece 2012-09-29
  • 打赏
  • 举报
回复
upup help
lei00529 2012-09-28
  • 打赏
  • 举报
回复
//表1,2,3都有db.SaveChanges();
改为
action1()中的db.SaveChanges(false);
然后在

transaction.Complete();
db.AcceptAllChanges();
}
just_onece 2012-09-28
  • 打赏
  • 举报
回复
upup 江湖救急~~~~

62,164

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧