EF Code First Drop数据库?

时间:2016-11-14 20:50:48

标签: entity-framework

我想首先使用EF代码迁移来在数据库中创建我的模型。但是,我将使用的数据库已存在并由其他应用程序共享。我的问题是:

迁移是否会删除数据库?那将是一场灾难! 迁移是否会删除任何内容?

2 个答案:

答案 0 :(得分:1)

问:迁移会删除数据库吗?

A:不可以。你可以在不删除它的情况下做到这一点。

您必须按照下面的 Package Manger控制台进行操作。

第1步:

PM > Add-Migration InitialCreate –IgnoreChanges

上面的命令将创建一个空的迁移,将当前模型作为快照。

第2步:

PM > Update-Database

以上命令将InitialCreate迁移应用于数据库。因此,实际迁移不包含任何更改,它会向__MigrationsHistory表添加一行,表明已经应用了此迁移。

您可以在此处详细了解:CF Migrations with an existing database

答案 1 :(得分:0)

在这种情况下我通常做的是创建到现有数据库的迁移,然后从Up和Down方法中删除所有内容并运行更新。这样,您的代码首次迁移将与数据库中当前的最新版本保持同步,因此所做的任何新架构更改将是添加第二次迁移所获得的唯一内容。