我正在部署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="Data Source=EXTERNALSERVERNAME;Password=****;User ID=****;Initial Catalog=AppData;Integrated Security=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
</connectionStrings>
因此,错误是对本地服务器进行身份验证,而本地服务器只是托管文件。应用程序中不与数据库交互的普通ASP页面正在正确提供。尝试访问完全不同的服务器上的数据库时,似乎只会出现此问题。我也知道异地服务器的连接字符串是正确的,它适用于其他应用程序。
我很少处理配置内容,而且我在极其受限制的环境中工作,所以这很难排除故障。非常感谢任何帮助。