0

我目前正在开发一个 MVC 4 项目,我们决定使用普通的旧 SQL,而不是依赖 EntityFramework。

我现在的问题是初始化数据库连接的最佳实践是什么。我考虑过使用单例打开连接(连接字符串存储在 Web.config 中),然后在整个应用程序生命周期中使用已建立的连接,但我不确定这是否是一个好方法!

4

3 回答 3

4

对于数据库连接,越晚打开越早关闭

您应该在必要时创建连接对象,而不是使用单例连接,如果使用using块则更好,因为 Connection 实现IDisposable并且您应该在完成连接后处理连接。

于 2013-02-20T09:23:48.017 回答
0

ODP.NET支持连接池,因此没有理由(除非在您的特定情况下另有证明)来保留Singleton您的OracleConnection对象。

这里的最佳实践是 imo 为每个语句使用连接(.NET 连接对象,而不是物理连接)。

using(OracleConnection connection = ...)
    {
        ...Do work here
    }
于 2013-02-20T09:24:12.097 回答
0

如果您想了解更多关于您刚刚描述的类似方法的信息,请查看此处:https ://stackoverflow.com/a/10153406/1289283 。我已经回答了这种困境。确保您不会在每个应用程序规模上执行此操作,而是在每个请求上执行此操作,否则您会遇到麻烦。每个应用程序适用于单用户桌面应用程序,而不适用于网络应用程序!并且不要为此使用单例...

于 2013-02-20T09:25:35.630 回答