我正在向我的应用添加一个“WhatIf”开关(受Powershell -WhatIf开关启发),它只是模拟数据处理,而不会将任何实际数据更改保存回EF存储。
我希望实现这一点的方法只是在调用SaveChanges()之前添加一个检查,如下所示:
if (WhatIf == false)
efEntities.SaveChanges()
这样,应用程序的其余部分可以正常进行更改,只要从不调用SaveChanges(),我就不必担心会意外地进行任何更改。
这会有用吗?我担心SaveChanges会被EF的其他部分调用,例如Dispose,还是类似的东西?
谢谢!
答案 0 :(得分:2)
它会起作用。 EF不会自己调用SaveChanges
。开发人员始终负责持续进行更改。