首页 > 解决方案 > 将 Asp.Net Core 发布到 IIS 7.5 LocalDb 错误(开发模式)

问题描述

我在 IIS 7.5 上发布了一个 asp.net core 2.0 Web 应用程序,如果坚持主页,它工作正常。当我们要访问数据库时,它会显示此错误

错误截图

我也这样做了,但仍然存在错误,“”

数据库:LocalDB

还将应用程序池配置为本地数据库,但问题仍然存在。

谢谢,

标签: asp.net-corelocaldbaccess-denied

解决方案


抱歉,您遇到了这个问题。您能否像在上面分享的错误页面一样分享详细的异常?如果你可以的话。这将有助于快速解决这个问题。

更重要的是,您可能需要执行以下操作:

  • 确保已安装 ASP.NET Core Hosting Bundle。我认为您已经完成了,因为您的应用程序运行并显示主页。
  • 因此,将应用程序的 IIS 应用程序池添加为 DB Login,并具有 DB Owner 权限。
  • 检查您要部署的环境的数据库连接字符串。在这种情况下,我相信它不是发展。

在您的 Startup.cs 文件中也这样做。

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
  if(env.IsDevelopment())
  {
    app.UseDeveloperExceptionPage();
    app.UseDatabaseErrorPage();
  }
}

这应该有助于向您显示更详细的错误。另外,如果它不起作用,试试这个

在 Microsoft SQL Server Management Studio 中,在 Security -> Logins 中创建一个新用户(在与“Databases”文件夹相同的嵌套级别中)。用户必须具有与 IIS 服务器中的应用程序池类似的名称。像我上面建议的那样,给它 DB Owner 权限。

我希望这会有所帮助,请在评论部分告诉我。


推荐阅读