2017-09-04 99 views
0

我是EF Core的新手,并且当我尝试使用它时,我发现您需要为其添加迁移以从模型创建数据库。我的问题是,除了迁移之外,我们是否还有另外一种选择来在运行时动态创建数据库,就像EF 6中的一样?实体框架核心2.0动态创建数据库

谢谢。

回答

0

在EF Core中提供种子机制之前,您可以提供自己的播种机制。

在项目的早期阶段,当数据库尚未修复时,我并不在意数据会丢失。当我想动态重新创建数据库时,我调用下面的函数。通过设置一个参数,我确定这个“recreateDatabase”函数是否被调用为yes或no。该函数包含在MyOwnDbContext类中。

你需要写种子功能非常类似于您在EF使用一个6

private static void recreateDatabase(YourOwnDbContext dbContext) 
    { 
     dbContext.Database.EnsureDeleted(); 
     dbContext.Database.EnsureCreated(); 

     seed(dbContext); 
    }