49

我首先使用 VS 2012 MVC4 代码构建 Web 应用程序。为了.mdf在更改模型后重新创建文件,我从 VS 的 app_data 目录中手动删除了该文件。我以前做过几次,没有任何问题。

现在我收到一个例外:

基础提供程序在打开时失败。==> 无法将文件附加 MYDB.mdf为数据库'MYDB'

我将感谢您对如何重新创建.mdf文件的帮助。

谢谢!

4

6 回答 6

101

为我解决了这个问题,从包管理器控制台运行这些命令:

  sqllocaldb.exe stop v11.0
  sqllocaldb.exe delete v11.0

进而:

  Update-Database
于 2013-12-02T20:24:12.230 回答
31

使用 SQL Server 对象资源管理器删除数据库,而不仅仅是删除解决方案资源管理器中的 .mdf 文件。否则,SQL Server 实例仍然认为数据库名称已被使用,并且下次您尝试将数据库附加到相同名称时,它将无法正常工作。请参阅此 MSDN 页面中有关初始目录的部分:

http://msdn.microsoft.com/en-us/library/jj653752.aspx#initialcatalog

于 2012-10-22T16:01:26.670 回答
4

再次尝试从 SQL Management Studio 中删除它。它会抱怨不再有物理文件,但会从对象浏览器中删除(刷新后你会看到)

于 2013-02-27T18:27:43.303 回答
4

从应该工作的连接字符串中删除此行;)

“AttachDbFilename=|DataDirectory|whateverdatabasename-20130917064511.mdf”

于 2013-09-17T05:02:55.050 回答
1

退出 localhost iis express 并重试。

于 2012-10-21T19:38:13.593 回答
0

我删除了我的 DBContext 类并在我的 MVC 项目中重新创建了它。然后在 App_Data 中重新创建 .mdf 文件

于 2015-06-25T16:33:57.690 回答