c# - 在 MVC 中使用 LocalDb 从 App_Data 文件夹中删除数据库时出现 "Cannot attach the file"错误?

标签 c# asp.net sql-server asp.net-mvc asp.net-mvc-5

我正在使用 LocalDb,我只想删除我的数据库。

我的印象是,由于 LocalDb 的工作方式,我只能访问本地数据库实例在我的 App_Data 文件夹中创建的 *.mdf 和 *.ldf 文件(我通过方式)。

下次我启动应用程序并使用它时,它们只会创建新文件,而我将拥有一个新数据库。但是当我删除文件时,我收到以下消息...

Cannot attach the file 'c:\users\exitos\documents\visual studio 2013\Projects\xxxxxxxxxxxxxxxxxxxxxx\xxxxxxxxxxxxxxxxxxxxxx\App_Data\aspnet-xxxxxxxxxxxxxxxxxxxxxx-20140118101721.mdf' as database 'aspnet-xxxxxxxxxxxxxxxxxxxxxx-20140118101721'.

为什么?我使用 GIT 重置了我的初始提交,以确保整个解决方案文件夹是“新鲜的”,但我仍然遇到问题。我什至停止了 Sql Server Express 的运行并终止了所有 Sql 进程,但仍然是同样的问题。

.ldf和.mdf文件是写入注册表还是什么的?

我在 .config 中更改了文件的名称并且它起作用了,但我不想一直这样做。我只想通过物理删除来拆除我的数据库...

最佳答案

这并不明显,但建议您不要在 Visual Studio 或 SQL Server Management Studio 中的 SQL Server 对象资源管理器之外删除物理 .mdf 和 .log 文件。

如果发生这种情况,您可以使用对象资源管理器取消注册。

转到服务器资源管理器 > 数据连接,找到数据库并将其从那里删除。

enter image description here

然后 Visual Studio 将在下次毫无问题地重新创建数据库。

我是从斯科特·艾伦 (Scott Allen) 的视频中了解到这一点的,但他也在此处记录了这一点。

http://odetocode.com/blogs/scott/archive/2012/08/15/a-troubleshooting-guide-for-entity-framework-connections-amp-migrations.aspx

关于c# - 在 MVC 中使用 LocalDb 从 App_Data 文件夹中删除数据库时出现 "Cannot attach the file"错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21203067/

相关文章:

c# - 以编程方式将按钮移动到另一个 tr

sql - 将参数传递给 OLE DB SOURCE

c# - 在 SQL Server 中加密/在 .Net 4 中解密

c# - 如何向 WPF TextBlock 添加命令?

C# - WPF - 添加图标后的项目大小(从资源加载图标或从项目 EXE 中提取)

asp.net - ASP/ASP.Net 中的 DNS 查询

java - 尝试通过 Eclipse 连接到 Sql 服务器(找不到驱动程序..我认为)

c# - 检查依赖项是否已正确解析 IOC

c# - 如何在启动画面 (System.Windows.SplashScreen) 上放置文本?

asp.net - 在 Ruby 中重新实现 ASP.NET 成员资格和用户密码哈希