SaveChanges回滚DbContextTransaction后重置EF DBContext



我在带有EntityFrameWork 6.1的UOW设计模式中使用DbContextTransaction,除了在事务回滚后回滚DBContext之外,其他都可以我的意思是如下:

  1. DBContext处于初始状态
  2. 创建交易
  3. 做一些工作:3.1创建父实体的子实体并保存实体3.2调用上下文的SaveChanges
  4. 在此之后引发异常
  5. 事务的调用回滚:

预期:数据既不保存在数据库中,也不保存在DBContext中发生了什么:数据没有保存在数据库中,但它仍然始终存在于上下文中

我尝试使用ChangeTracker,但所有实体的状态都是Unchanged。

因此,问题是:如何在调用SaveChanges后在上下文中回滚修改。

我希望建立帮助,因为我花了很多时间尝试许多论坛的解决方案

如何在调用SaveChanges后在上下文中回滚修改。

你没有。只需创建一个新的DbContext实例。DbContext中未保存的更改将被保留,因为您可能希望在回滚后重试SaveChanges。

相关内容

  • 没有找到相关文章

最新更新