在并发访问同一ASP.Net页面的情况下,SqlConnection已经打开

时间:2010-12-29 14:40:33

标签: asp.net concurrency sqlconnection

我的ASP.Net 3.5应用程序中有一个奇怪的问题。当多个用户尝试访问同一页面(具有一些长时间运行的方法)时,应用程序会在尝试打开与数据库的连接(静态类中的静态方法)时崩溃。似乎连接已经打开。但是,当只有一个用户使用该应用程序时,不会发生这种情况。我无法理解的是,一个用户的操作如何影响Web应用程序中的另一个? 我通过在打开或关闭连接时向文本文件附加一行文本来检查所有打开的连接是否在执行操作后关闭。打开和关闭连接的数量是相等的。此外,连接仅从一个地方打开和关闭,其中close方法在Finally()块内。 以前有人经历过这样的行为吗?您的回复将非常感谢。

谢谢,

阿里

1 个答案:

答案 0 :(得分:4)

您的SqlConnection对象是否定义为静态?这会导致所有会话共享一个连接对象,并导致您遇到的行为。

相关问题