在asp.net中关闭sql连接

时间:2015-03-29 05:48:19

标签: asp.net sql-server-2008

我正在使用带有sql server连接的asp.net(c#)。该应用程序一次由30个用户使用。

以下是我的应用程序的连接字符串:

<add name="AOS" connectionString="Data Source=SANDIP-PC\R2;Initial Catalog=DB_20150322;User ID=sa;Password = lambda; Connect Timeout=100; Pooling=False;" providerName="System.Data.SqlClient"/>

我的应用程序运行正常,上面的连接字符串,但有时当发生异常时,如果连接未关闭,并且在此期间任何新请求出现,则显示以下错误消息:

  

“无法打开登录请求的数据库”DB_20150322。登录失败。

     

用户's SqlException(0x80131904)'登录失败。“

我没有此应用程序的源代码。 我该如何解决这个问题? 发生此类异常时如何全局关闭数据库连接? 除了我的思考过程之外还有其他问题吗?

我之所以这样,是因为每次都会打开相同的页面而没有任何错误,但有时当第一次使用相同的条件加载同一页面时,页面不会加载。

如何在发生此类异常时全局关闭连接?

我是否需要更改连接字符串中的任何内容?

1 个答案:

答案 0 :(得分:0)

  

这不是Connection Close问题,它显示登录失败错误   因为Web.Config文件中使用了身份验证模式。

使用Windows身份验证模拟服务帐户,您必须在IIS和ASP.NET中设置Windows身份验证。

Web.Config文件中设置:

<system.web>
    <authentication mode="Windows"/>
 </system.web>

EDIT2: 如果由于连接问题确实发生了,那么你可以 打开或关闭任何连接时检查连接状态,例如

if(con.State == ConnectionState.Open)
{
con.Close();
}

if(con.State == ConnectionState.Close)
{
con.Open();
}