紧急求助!!!使用数据访问组件返回DataReader,但没有关闭数据库连接,怎么处理???在线等!!!UP有分
在我的项目中使用了
GotDotNet.ApplicationBlocks.Data
这个数据访问组件,通过这个组件返回了很多的IDataReader类型的数据,例如
public class Data
{
private string cn = null;
private string assembly = null;
private string type = null;
private string conType = null;
public Data()
{
conType = ConfigurationSettings.AppSettings["HelperType"].ToLower();
assembly = ConfigurationSettings.AppSettings["HelperAssembly"];
cn = ConfigurationSettings.AppSettings["ConnectionString"];
type = "GotDotNet.ApplicationBlocks.Data." + ConfigurationSettings.AppSettings["HelperType"];
ah=AdoHelper.CreateHelper(assembly, type);
}
public IDataReader GetList()
{
AdoHelper ah = GetAdoHelper();
string strSql = "SELECT * FROM Table";
return ah.ExecuteReader(cn,CommandType.Text,strSql);;
}
}
然后我在程序中直接这样使用
Data data = new Data();
IDataReader = data.GetList();
//下面就是些使用这个IDataReader 循环处理的语句了
............
但整个这个过程下来我并没有把这个IDataReader 绑定到任何控件上,按msdn上的说法好象不绑定的话就不会释放返回这个IDataReader 时产生的数据库连接,现在的现象是直接导致我的连接池很容易就被占满了,所以我急需要一个好的解决办法,再尽量少的改动下能把数据库连接及时关闭掉
该怎么办啊??????????