0

我们有一个使用 SQL Server 2008 SP3 Express 的 .NET 程序。程序和服务器都在同一台机器上。它是使用最初打开并在之后保持打开的连接编写的。通常这可以正常工作。但有时程序会闲置数小时,在此期间连接会关闭,程序会在下一次 SQL 访问时爆炸。

数据库自动关闭参数关闭。参数 Pooling=False 在程序连接字符串中。在 IIS 中,对于每个应用程序池,回收已被禁用,空闲超时已设置为 9000 分钟。

在到目前为止的测试中,这通常有效,但有时无效。

4

1 回答 1

0

最简单的做法是检查连接状态并在必要时打开它:

if(conn.State == ConnectionState.Closed)//Can't quite remember the exact syntax
{
    conn.Open();
}
//do DB stuff here.
于 2013-07-28T11:39:32.217 回答