我在带有EntityFrameWork 6.1的UOW设计模式中使用DbContextTransaction,除了在事务回滚后回滚DBContext之外,其他都可以我的意思是如下:
- DBContext处于初始状态
- 创建交易
- 做一些工作:3.1创建父实体的子实体并保存实体3.2调用上下文的SaveChanges
- 在此之后引发异常
- 事务的调用回滚:
预期:数据既不保存在数据库中,也不保存在DBContext中发生了什么:数据没有保存在数据库中,但它仍然始终存在于上下文中
我尝试使用ChangeTracker,但所有实体的状态都是Unchanged。
因此,问题是:如何在调用SaveChanges后在上下文中回滚修改。
我希望建立帮助,因为我花了很多时间尝试许多论坛的解决方案
如何在调用SaveChanges后在上下文中回滚修改。
你没有。只需创建一个新的DbContext实例。DbContext中未保存的更改将被保留,因为您可能希望在回滚后重试SaveChanges。