我正在使用Entity Framework开发应用程序。
当我处于调试模式时,即使我没有按照SaveChanges方法退出调试,我的测试值也会保存到数据库中。
为什么会这样?
我花了4个小时试图搞清楚,但没有运气......
即使我在操作开始时有断点,我立即退出调试器 - 数据仍然存在......
答案 0 :(得分:0)
嗯,事实证明调试器即使在断点上也会继续执行代码,如果我的代码中没有错误,它会将更改应用于数据库。
避免这种情况的一种方法是在代码中添加预处理器,如下所示:
#if !DEBUG
context.SaveChanges();
#endif
我无法通过SavingChanges方法跟踪它,因为我不确定我应该在那里寻找什么,有太多不同的东西,我没有足够的时间坚持下去。