0

我有一个 ASP.NET 网页。它利用了 4 BackgroundWorkers。每个 bw 从数据库中检索一些数据。

连接数据库的代码是:

if (dbConnection.State == ConnectionState.Closed)
{
    dbConnection.Open();
}    
DataTable dt = new DataTable(); 
OdbcCommand cmd = new OdbcCommand(sqlQuery, dbConnection);
cmd.CommandTimeout = 0;
IDataReader dataReader = cmd.ExecuteReader();
dt.Load(dataReader);
dataReader.Close();
dataReader.Dispose();

在构造函数中,this.dbConnection = new OdbcConnection(networkdetails);

每个 bw 都使用上面的代码片段来查询数据库并检索值。代码有时工作得很好。其他时候它会抛出上面给出的异常。

关于我可能做错了什么的任何帮助?

4

1 回答 1

0

尝试处理异常,然后关闭连接。

为此,在“Try”块中编写代码,在“Catch”块中捕获异常并在“Finally”块中关闭连接。

try{
      // Your code
}
catch
{
      // Catch exception
}
Finally
{
      // Close the connection
      dbConnection.Close();
}
于 2013-04-23T09:41:26.980 回答