2010-10-09 69 views
0

我在asp.net网页中的每个插入,更新,删除和选择方法中创建SqlConnection对象。然后我在finally块中关闭连接对象。但我不知道这是一个好方法。这是关于连接池的问题吗?ASP.NET连接池问题?

对于我有没有关于如何使用SqlConnection和SqlDataReader对象的建议?

谢谢。

+0

您是否收到错误或发现泄漏? – Nix 2010-10-09 17:44:27

+0

是的,我得到这个错误: 超时过期。在从池中获取连接之前已超时。发生这种情况的原因可能是因为所有连接池都在使用中,并且达到最大池大小。 这是关于我创建这么多的sqlconnection对象。 (我关闭每一个) – pegasus 2010-10-09 17:53:16

+0

如果你得到这个错误,你确定关闭了每个连接和数据库,那么你可能想检查一下为什么你会得到这个错误的其他可能性。 – Mike 2010-10-11 16:18:51

回答

0

关闭finally块中的连接是你想要做的。另一种方法是使用Using声明。使用将与任何实现iDisposable的对象(包括sqlconnection)一起工作,并在完成时调用对象的处置,无论是否有异常。

0

如果你肯定关闭你的SQLConnection,那么我也会检查你的SQLDataReader并确保你正在关闭这些。