2
我想在实体框架和存储库模式中使用MVC应用程序 在此应用程序中,最终用户可能会在会话期间通过多个http请求修改不同的实体数据。 (类型的向导页面) 然而,他们确实提交这些修改,直到最终提交按钮被点击 这些也可以选择离开,这种情况下,他们的工作应该被回滚。实体框架ObjectContext:并发
我想知道会发生什么,如果两个用户都在做同样的事情,其中一个点击提交按钮 我猜这两个用户所做的更改是承诺!
我想我只需要一次开始,一次获取数据的持久化通过创建用户连接或会话 一个对象上下文您的意见是非常欢迎
Yakimych,非常感谢你的意见。但是,您是否建议我不应该利用EF ObjectContext提供的更改跟踪? 如果是这样,为什么不呢? – user385411 2010-08-05 10:30:44
不是你的情况。 ObjectContext是一个UnitOfWork。它不是线程安全的,意味着尽可能短暂。如果跨Web请求使用相同的ObjectContext,或者每个用户使用相同的ObjectContext,则可能会遇到一系列问题(您在问题中提到的其中一个问题)。如果您确实想使用某些EF状态跟踪功能,请查看自我跟踪实体。 – Yakimych 2010-08-05 10:47:07