【发布时间】:2017-11-07 17:09:09
【问题描述】:
我遇到了一些问题,每次单击按钮时都会出现以下错误:
超时。在获得一个之前的超时时间 来自池的连接。这可能是因为所有汇集的 正在使用连接并且已达到最大池大小。
这一分钟下一分钟我遇到了一个错误。它抛出一个异常
public List<TransactionIssues> GetAllTransactions()
{
SqlConnection connection = new SqlConnection(connectionString);
SqlCommand command = new SqlCommand();
List<TransactionIssues> transIssues = new List<TransactionIssues>();
command.CommandText = "issue_sp_getallunpostedissues";
command.CommandType = CommandType.StoredProcedure;
command.Connection = connection;
SqlDataReader rdrObj;
try
{
connection.Open();
rdrObj = command.ExecuteReader();
while (rdrObj.Read())
{
TransactionIssues issues = new TransactionIssues();
issues.requisitionNumber = rdrObj.GetString(0);
issues.transactionDate = rdrObj.GetDateTime(1);
//issues.expense_acccount.account_desc = rdrObj.GetString(2);
//issues.expense_acccount.index = rdrObj.GetInt16(3);
issues.inventory_acccount.index = rdrObj.GetInt32(2);
issues.inventory_acccount.account_desc = rdrObj.GetString(3);
issues.docNumber = rdrObj.GetString(4);
issues.docType = rdrObj.GetString(5);
issues.items = getTransItemByRquisition(rdrObj.GetString(4));
transIssues.Add(issues);
}
rdrObj.Close();
}
catch (Exception ex)
{
throw ex;
}
finally
{
connection.Close();
}
return transIssues;
}
【问题讨论】:
-
如果您在使用命令后将其丢弃(例如,将其放入
using语句中)会发生什么?您的连接似乎仍在使用中,并且您的连接池中的连接用完了。如果增加池大小会延迟此错误,则您必须弄清楚为什么让它们忙... -
但我没有保留它们,它可以打开和关闭
-
using语句的使用方法;看来我做错了
标签: c# asp.net sql-server