visual studio 2017 web 应用程序 mvc SqlException (0x80131904) 错误
visual studio 2017 web application mvc SqlException (0x80131904) error
过去一个月我一直在开发 Web 应用程序,现在是时候将它部署到真实环境中了 windows server.The 问题是一旦我首先部署了我的默认 localdb 代码 SQL 数据库不再使用此代码:
[SqlException (0x80131904): 与 SQL 服务器建立连接时发生了与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确并且 SQL 服务器配置为允许远程连接。 (提供商:SQL 网络接口,错误:50 - 发生本地数据库运行时错误。无法创建自动实例。有关错误详细信息,请参阅 Windows 应用程序事件日志。
)]
来源错误:
Line 11: var manager = new UserManager();
Line 12: var user = new ApplicationUser() { UserName = UserName.Text };
Line 13: IdentityResult result = manager.Create(user, Password.Text);
Line 14: if (result.Succeeded)
Line 15: {
我的 web.config 字符串:
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;Initial Catalog=aspnet-projecttwo-80a6f83e-fca9-45c3-869f-c5c625497346;AttachDbFilename=|DataDirectory|\aspnet-projecttwo-80a6f83e-fca9-45c3-869f-c5c625497346.mdf;Integrated Security=SSPI" providerName="System.Data.SqlClient" />
</connectionStrings>
太令人沮丧了,我有点迷路了,我不想从头开始建立我的登录和注册,我只想使用 Visual Studio 2017 年提供的登录和注册,并且没有最新的教程如何做.
我的电脑上安装了 SQL Express,目前 运行。
有可能解决 LocalDB
实例问题:
1) 如果数据库已经创建(如 AttachDbFilename=|DataDirectory|\aspnet-projecttwo-80a6f83e-fca9-45c3-869f-c5c625497346.mdf
所示),请删除该部分,使其仅包含如下所示的 Initial Catalog
。
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;Initial Catalog=aspnet-projecttwo-80a6f83e-fca9-45c3-869f-c5c625497346;Integrated Security=SSPI" providerName="System.Data.SqlClient" />
</connectionStrings>
2) 将 MVC 应用程序的 IIS 应用程序池从 ApplicationPoolIdentity
设置为 LocalSystem
或 NetworkService
- 如果您怀疑该应用程序存在与权限相关的问题。
3) 找到 \%WinDir%\System32\inetsrv\config\applicationHost.config
文件并启用 setProfileEnvironment="true"
(之后重新启动应用程序池):
<!-- use application pool name depending which pool that your MVC site used -->
<add name="DefaultAppPool" ...>
<processModel identityType="ApplicationPoolIdentity" loadUserProfile="true" setProfileEnvironment="true" />
</add>
进一步参考:
类似问题:
过去一个月我一直在开发 Web 应用程序,现在是时候将它部署到真实环境中了 windows server.The 问题是一旦我首先部署了我的默认 localdb 代码 SQL 数据库不再使用此代码:
[SqlException (0x80131904): 与 SQL 服务器建立连接时发生了与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确并且 SQL 服务器配置为允许远程连接。 (提供商:SQL 网络接口,错误:50 - 发生本地数据库运行时错误。无法创建自动实例。有关错误详细信息,请参阅 Windows 应用程序事件日志。 )]
来源错误:
Line 11: var manager = new UserManager();
Line 12: var user = new ApplicationUser() { UserName = UserName.Text };
Line 13: IdentityResult result = manager.Create(user, Password.Text);
Line 14: if (result.Succeeded)
Line 15: {
我的 web.config 字符串:
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;Initial Catalog=aspnet-projecttwo-80a6f83e-fca9-45c3-869f-c5c625497346;AttachDbFilename=|DataDirectory|\aspnet-projecttwo-80a6f83e-fca9-45c3-869f-c5c625497346.mdf;Integrated Security=SSPI" providerName="System.Data.SqlClient" />
</connectionStrings>
太令人沮丧了,我有点迷路了,我不想从头开始建立我的登录和注册,我只想使用 Visual Studio 2017 年提供的登录和注册,并且没有最新的教程如何做.
我的电脑上安装了 SQL Express,目前 运行。
有可能解决 LocalDB
实例问题:
1) 如果数据库已经创建(如 AttachDbFilename=|DataDirectory|\aspnet-projecttwo-80a6f83e-fca9-45c3-869f-c5c625497346.mdf
所示),请删除该部分,使其仅包含如下所示的 Initial Catalog
。
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;Initial Catalog=aspnet-projecttwo-80a6f83e-fca9-45c3-869f-c5c625497346;Integrated Security=SSPI" providerName="System.Data.SqlClient" />
</connectionStrings>
2) 将 MVC 应用程序的 IIS 应用程序池从 ApplicationPoolIdentity
设置为 LocalSystem
或 NetworkService
- 如果您怀疑该应用程序存在与权限相关的问题。
3) 找到 \%WinDir%\System32\inetsrv\config\applicationHost.config
文件并启用 setProfileEnvironment="true"
(之后重新启动应用程序池):
<!-- use application pool name depending which pool that your MVC site used -->
<add name="DefaultAppPool" ...>
<processModel identityType="ApplicationPoolIdentity" loadUserProfile="true" setProfileEnvironment="true" />
</add>
进一步参考:
类似问题: