【发布时间】:2011-12-31 12:50:10
【问题描述】:
有没有一种好方法可以检测ObjectContext 更改何时实际提交?
SavingChanges 在进入数据存储之前发生,但我还需要一种方法来了解这些更改是否实际提交。
提前致谢 约翰
更新:
我拥有的是代码优先的 DbContext。这被输入到动态数据中,正如我发现的那样,它使用 DbContext 的内部 ObjectContext(在转换为 IObjectContextAdapter 时我可以访问它)。不调用 dbcontext 的 SaveChanges,而是使用 objectcontext 的 SaveChanges。我想做的就是在保存完成后收到通知(即事件 SavedChanges),这样我就可以使我的缓存失效。
【问题讨论】:
-
如果没有异常,则提交了这些更改。
-
我没有调用 SaveChanges()。有一堆可能的 SaveChanges() 调用者,所以不是去所有的调用者(如果可能的话)并编辑它们,所以我可以在 SaveChanges() 之后被调用,我希望我能在 DbContext 中捕获它。
-
您不能连接到活动 SavingChanges 吗? msdn.microsoft.com/en-us/library/…
-
在数据提交之前触发。