使用模型首次使用
设置实体框架6运行应用程序, 数据库创建。活泉!
删除App_Data文件夹中的.mdf / .ldf。
运行应用程序, 数据库连接错误。
为什么不重新创建数据库?
P.S。尝试做How to re-create database for Entity Framework?,但它不起作用。
那么我如何说服EF重新创建数据库(为什么这会很难?)
答案 0 :(得分:10)
在DbContext类构造函数中,您可以使用以下值之一来指定运行应用程序时要执行的操作:
Database.SetInitializer<MyContext>(new CreateDatabaseIfNotExists<MyContext>());
Database.SetInitializer<MyContext>(new DropCreateDatabaseIfModelChanges<MyContext>());
Database.SetInitializer<MyContext>(new DropCreateDatabaseAlways<MyContext>());
尝试在DbContext类中使用其中一个初始值设定项。
答案 1 :(得分:7)
您可能在Windows资源管理器中删除了MDF文件。 SQL Server LocalDb不知道它,错误可能是抱怨无法找到MDF文件。
要正确删除它,可以从Visual Studio中的SQL Server Management Studio或SQL Server对象资源管理器中删除数据库。
或者,您可以在Visual Studio Solution Explorer中选择“显示所有文件”,在App_Data中找到MDF文件,右键单击以从解决方案资源管理器本身中删除它。 Visual Studio似乎做对了,让SQL Server知道这个变化。