我想将 dbContext 的生命周期与 session 的生命周期联系起来,例如,能够通过多个请求提交或放弃对 dbcontext 上的一组突变的更改。
有没有其他(更好的?)方法来实现这一目标?如果不是,创建和处理上下文的合适机制是什么?我正在考虑在 session 结束时清理静态哈希表,但也许我做错了。我也在考虑只保留那些必须处理多个请求的上下文的想法,并保留每个 Action 的其余部分。有什么建议吗?
最佳答案
您可以使用 IoC(Inversion of Control) 容器来管理 DBContext 的生命周期,例如 StructureMap ,步骤如下:
http://nuget.org/packages/StructureMap.MVC4
http://docs.structuremap.net/QuickStart.htm
http://docs.structuremap.net/Scoping.htm
您还可以使用 存储库和工作单元模式 的组合来提交或放弃对多个请求的 dbcontext 上的一组突变的更改。
关于entity-framework - 管理 dbContext 的生命周期,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13067793/