2

我正在部署一个 ASP.NET MVC 应用程序,但我在使用 web.config 时遇到了困难。该应用程序将部署到我们的服务器,但将访问不同的异地服务器上的数据库。尝试加载访问数据库的页面时出现以下错误:

“/”应用程序中的服务器错误。


用户“LOCALSERVERNAME$”登录失败。说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.Data.SqlClient.SqlException:用户“LOCALSERVERNAME$”登录失败。

web.config 中的连接字符串如下所示:

<connectionStrings>
<add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" />
<add name="AppEntities" connectionString="metadata=res://*/Models.Model.csdl|res://*/Models.Model.ssdl|res://*/Models.Model.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=EXTERNALSERVERNAME;Password=****;User ID=****;Initial Catalog=AppData;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>

所以错误是为了验证本地服务器,它只是托管文件。应用程序中不与数据库交互的普通 ASP 页面得到了正确处理。该问题似乎仅在尝试访问位于完全不同服务器上的数据库时出现。我也知道异地服务器的连接字符串是正确的,它适用于其他应用程序。

我很少处理配置的东西,而且我在一个极其受限的环境中工作,所以这很难解决。很感谢任何形式的帮助。

4

1 回答 1

4

这通常意味着访问数据库的服务器位于另一台机器上,而该机器对其尝试访问的数据库没有权限。更多信息可以在这里找到

于 2012-08-28T14:46:45.613 回答