关于部署 MVC 应用程序的数据库问题

Database issues with regards to deploying MVC application

平台:Windows7 VS2013、Microsoft Server 2008 R2 和 Microsoft SQL Server 2012。

大家好。

我和我的合作伙伴最近创建了一个 MVC 应用程序,该应用程序在本地主机上运行,​​本地数据库托管在计算机内的 Microsoft SQL Server 2012 中。

但现在我们想做的是在网站上托管此应用程序,供我们的用户使用该应用程序。
托管已经完成,我们设法让首页显示,但问题在于与服务器中 MS SQL Server 2012 的数据库连接。

当我们检查 SQL 错误日志时,我们会看到:
2015-05-26 12:04:38.26 登录错误:18456,严重性:14,状态: 38.
2015-05-26 12:04:38.26 登录 用户 'NT AUTHORITY\NETWORK SERVICE' 登录失败。原因:无法显式打开 指定的数据库 'HRMS.Models.EmployeeDBContext'。 [客户端:<本地机器>] 我可以就如何在服务器上设置 MVC 应用程序以与服务器中安装的 MS SQL 2012 通信寻求一些建议吗?

我们都是 MVC 的新手,ASP.Net,请以最简单的方式指导我们。

提前致谢!

您的连接字符串很可能表示集成身份验证 (integrated security=true),这意味着工作进程的身份正在尝试连接到数据库。

问题是您没有以明确的方式设置身份,或者您将其设置为 Network Service 内置帐户。

并且此帐户未被列为允许访问数据库。

您有两个选择:

  1. 向网络服务添加访问数据库的权限(不推荐)

  2. 在服务器的操作系统中创建一个单独的身份(用户)(如果您有目录,则创建一个域帐户)并将该身份分配给 IIS 中的应用程序池(以便 ASP.NET进程在这个账号下运行)并给这个用户访问数据库的权限。

更多信息请点击此处:

http://www.iis.net/learn/manage/configuring-security/application-pool-identities