ASP MVC应用程序的数据库在Management Studio中不可见

时间:2012-11-30 10:45:12

标签: sql-server asp.net-mvc entity-framework

我在IIS上部署了一个简单的ASP.net MVC应用程序(在win 2k8 R2 64位下7.5),当我开始使用该应用程序时,它创建了它的数据库(ApplicationData,第二个用我自己的数据)。 数据库(.mdf和.ldf文件)是在App_Data文件夹中创建的。

应用程序使用实体框架代码第一种方法。我不得不将应用程序池的标识更改为网络服务以使网页正常工作。我还必须手动创建此App_Data目录,并为网络服务用户分配权限以修改其内容。

现在我遇到的问题是我无法在Management Studio中看到这些数据库(安装了高级服务的SQL Server 2012 express)。如果不长时间使用网页,我可以手动附加它们,否则.mdf文件被网络服务用户的sqlservr.exe进程锁定。 我一直有两个同时运行sqlservr进程。一个由MSSQLsomething用户运行,第二个由Network Service运行。但是,我只安装了一个SQL服务器实例(我100%肯定它)。

有人可以解释一下,即使在使用它们的时候(由sqlservr.exe进程锁定),Management Studio也无法看到这些数据库吗?

1 个答案:

答案 0 :(得分:1)

这是因为数据库托管在User Instance Mode中,因此实际上并未附加到“官方”数据库服务器。

在该文章中,您将看到在连接字符串中使用User Instance=true;启用了此功能。要将其关闭,请指定User Instance=false;