編碼過程中使用SqlDataReader 來操作資料庫時,你是否每次在調用完你的資料庫方法後,再手動呼叫方法或寫代碼關閉資料庫聯接呢? (呵呵我以前是這樣做的見笑)
下面的方法可以完成解決此問題了,cmd.ExecuteReader的參數CommandBehavior.CloseConnection會自動幫你關閉與之相關聯的conn
public static SqlDataReader ExecuteReader(string connectionString, CommandType cmdType, string cmdText, params SqlParameter[]commandParameter
{
SqlCommand cmd = new SqlCommand();
SqlConnection conn = new SqlConnection(connectionString);
try
{
PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
// 給cmd.ExecuteReader加上參數CommandBehavior.CloseConnection會在cmd.ExecuteReader執行完後自動關閉與之相關聯的conn
SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
cmd.Parameters.Clear();
return rdr;
}
catch
{
conn.Close();
throw;
}
}
http://www.cnblogs.com/abeen/archive/2006/12/19/597039.html