0

我在 ASP.NET 4 中为我的项目使用最新版本的实体框架 4 - CTP 4。此版本 (EF4-CTP 4) 提供了使用代码优先方法构建对象上下文(或 DBContext)的选项。这种方法有其自身的缺点,即耗时,因此我在应用程序启动时构建它一次。但是我在许多文章中读到,创建对象上下文的单例对象可能并不明智。所以我希望维护小的上下文实例可能是每个会话。

所以我的问题是: 1. 是否建议在多个会话中共享对象上下文?2. 如果我们希望每个会话有一个实例,我们可以构建一次并将其实例用于多个会话吗?3. 如果跨会话共享,我们如何维护并发/提交?

谢谢。

4

1 回答 1

3

我建议不要使用 Singleton这是一个讨论为什么的问题

这也取决于这是否是 web/windows 应用程序,但是对于 web 应用程序,我们使用 DI 容器将 OC 范围限定为 HttpContext。

这样,每个 HTTP 请求只打开一个连接。

于 2010-11-10T04:43:38.647 回答