我正在使用 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 文件。
如果发生这种情况,您可以使用对象资源管理器取消注册。
转到服务器资源管理器 > 数据连接,找到数据库并将其从那里删除。
然后 Visual Studio 将在下次毫无问题地重新创建数据库。
我是从斯科特·艾伦 (Scott Allen) 的视频中了解到这一点的,但他也在此处记录了这一点。
关于c# - 在 MVC 中使用 LocalDb 从 App_Data 文件夹中删除数据库时出现 "Cannot attach the file"错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21203067/