IIS上的asp.net应用程序无法连接到localdb

时间:2016-10-15 12:30:04

标签: c# asp.net sql-server iis

我在IIS上运行了一个asp.net网络应用程序,一切都很好,直到我尝试访问数据库时出现此错误:enter image description here

我已经阅读了使用完整IIS使用LocalDB的两部分:1 Part | 2 Part

我按照说明操作仍然收到错误,有没有办法检查我是否正确地执行了这些步骤?

还有什么我可以检查的可能导致此错误吗?

注意:我尝试使用asp.net和asp.net核心应用程序,核心部分根本没有给出任何描述,因此我使用asp.net进行测试。我正在使用的数据库是visual studio提供的数据库。如果您希望我提供任何进一步的信息,我很乐意暂时解决这个问题并且似乎无法解决它。

1 个答案:

答案 0 :(得分:1)

看起来并不太复杂,但我对IIS和数据库的经验都让人感到困惑。希望这可以帮助将来的某个人。可能会有一些我错过的小步骤/调整,但这是因为整个解决方案需要一段时间来设置。

  1. 确保您实际安装了SQL Server。您可以下载我使用的{2008}版本here。安装时可能会很痛苦,安装时我实际上搞砸了,here is the vid I watched(我没有安装:数据库引擎服务)。
  2. 接下来,您要确保IIS身份(在我的情况下为IIS APPPOOL \ ASP.NET v4.0)具有连接到数据库服务器的权限。检查答案here
  3. 一旦连接到数据库服务器,就需要能够连接到服务器上的数据库(我不知道数据库和数据库服务器是两回事)。你需要做一些类似于第2步的事情,在SSMS中展开数据库文件夹,然后选择要授予访问权限的数据库,那里也有一个安全文件夹,你要添加该文件夹的身份。
  4. 其他有用的观点:

    • 如果你的sql配置管理器没有打开请tell it to,谢谢你gofr1。这是一个非常有用的工具,用于检查数据库连接(事实证明)
    • 确保将connectionString设置为指向sql server。确保它没有连接到位于connectionString中的AttachDbFilename=|DataDirectory|\your_database_name_here.mdf的mdf文件。
    • 对于asp.net Core,请阅读文档is god,因为一旦在IIS上部署应用程序,错误就不存在了,它将在黑暗时段提供帮助。请务必核对publishOptions

    为了进一步帮助您了解整个过程的工作原理,感谢gofr1 read here。没有解决问题,只有worth a read

    如果我记得我错过了什么,可能会在这里包含更多东西。