当前位置:编程学习 > C#/ASP.NET >>

vc运行错误,提示“池中无法获取链接”


之前是可以运行的,后来不知道为什么就出现这个了、但是其他页面也是使用oracle的数据啊,就只有这个不能运行。为什么啊?怎么解决? --------------------编程问答--------------------
static public SqlDataReader return_datareader(string sql) 

SqlConnection con = DB.createcon(); 
con.Open(); 
SqlCommand cmd = new SqlCommand(sql, con); 
SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);  //这里调用关闭 Connection
return sdr; 

public void ReadData() 

SqlDataReader da = return_datareader("select * from table1"); 
while (da.Read()) 

//这里读取数据

da.Close(); //这里关闭Read

数据库使用完后要及时关闭 --------------------编程问答-------------------- 额。。图片没有看到?错误是这样子的:
==========================================================================================================================================================================
超时时间已到。超时时间已到,但是尚未从池中获取连接。出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.InvalidOperationException: 超时时间已到。超时时间已到,但是尚未从池中获取连接。出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小。

源错误: 


行 43:         string ConnectionString = "Data Source=myoracle;Persist Security Info=True;User ID=scott;Password=tiger;Unicode=True";
行 44:         con = new OracleConnection(ConnectionString);
行 45:         con.Open();
行 46:         OracleDataAdapter da = new OracleDataAdapter(sql,con );
行 47:         DataSet ds = new DataSet();
 

源文件: f:\test\students1\App_Code\DataInfo.cs    行: 45  --------------------编程问答-------------------- 使用完 OracleDataAdapter应该把它使用的资源释放掉吧
Fill完成后是不是Dispose()了 --------------------编程问答--------------------
引用 3 楼 warraner 的回复:
使用完 OracleDataAdapter应该把它使用的资源释放掉吧
Fill完成后是不是Dispose()了




具体怎么用啊?不是很明白。
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,