SQLExpress错误的本地数据库

时间:2012-11-27 19:55:52

标签: asp.net .net sql-server database web-services

我有一个简单的Web服务,可以查询简单的.mdf数据库。

我正在使用IIS并使其成为一个有效的应用程序。

我可以从任何地方激活此Web服务上的所有功能。

但是当我尝试查询数据库时,我收到了这个错误:

  

System.Data.SqlClient.SqlException(0x80131904):无法打开登录请求的数据库“gateway”。登录失败。
  11-27 21:32:01.437:W / System.err(765):用户'IIS APPPOOL \ masn'登录失败。

我的连接字符串是:

<add name="gatewayConnectionString" 
     connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=gateway;Integrated Security=True" 
     providerName="System.Data.SqlClient"/>

那我怎么能让它运作起来呢?更改我的连接字符串?在某处更改权限?

1 个答案:

答案 0 :(得分:1)

错误表示运行Web服务的帐户无法访问数据库。在连接字符串中,您已指定了可信连接,因此IIS中为您的服务应用程序池指定的帐户将用于登录SQL服务器。

解决方案是让应用程序池帐户(IIS APPPOOL \ masn)访问gateway数据库,或更改连接字符串以包含有权访问它的用户名和密码,如下所示: / p>

<add name="gatewayConnectionString" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=gateway;User ID=someuser;Password=somepassword" providerName="System.Data.SqlClient"/>

使用可信连接是更好的方法,因为您不必在某处存储密码。

相关问题