我是EF Core的新手,当我尝试使用它时,我发现你需要为它添加迁移来从模型创建数据库。我的问题是,除了迁移之外,我们还有其他选择,可以像在EF 6中一样在运行时动态创建数据库吗?
感谢。
答案 0 :(得分:0)
在EF Core中提供播种机制之前,您可以提供自己的播种机制。
在项目的早期阶段,当数据库尚未修复时,我并不关心数据丢失。当我想动态重新创建数据库时,我调用下面的函数。通过设置参数,我确定这个“recreateDatabase”函数是否被称为yes或no。该函数包含在MyOwnDbContext类中。
您需要编写的种子功能与您在EF 6中使用的种子功能非常相似。
private static void recreateDatabase(YourOwnDbContext dbContext)
{
dbContext.Database.EnsureDeleted();
dbContext.Database.EnsureCreated();
seed(dbContext);
}