如何解决在SaveChanges回滚DbContextTransaction之后重置EF DBContext
我在EntityFrameWork 6.1的UOW设计模式中使用DbContextTransaction,除了在事务回滚后回滚DBContext之外,其他一切都可以 我的意思是这样的:
- DBContext处于初始状态
- 创建交易
- 做一些工作: 3.1 创建父实体的子代并保存该实体 3.2 调用上下文的SaveChanges
- 此后引发异常
- 呼叫交易回滚:
预期:数据未保存在数据库或DBContext中 发生了什么:数据没有保存在数据库中但仍然在上下文中存在!
我尝试使用ChangeTracker,但所有实体状态均未更改。
所以,问题是:如何在调用SaveChanges后也回滚Context中的修改。
我希望能有所帮助,因为我花了大量时间尝试许多论坛的解决方案
解决方法
如何在调用SaveChanges之后如何在上下文中回滚修改。
你不知道。只需创建一个新的DbContext实例。保留DbContext中未保存的更改,因为您可能要在回滚后重试SaveChanges。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。