实体框架5 Code First迁移准备生产?

时间:2013-03-31 01:49:48

标签: database entity-framework-4.1 entity-framework-5 ef-migrations

我正在对EF5进行一些研究,并遇到了这个question. 答案中的说法对我有意义。

但是现在,在EF5中我们有迁移。 因此,假设我已经使用Code First构建了一个应用程序,它现在已经启动并运行了一段时间,并且敏感的用户数据已经累积在数据库中。考虑模型需要进行一些更改的情况。

只更新POCOS并让Migrations负责更新数据库是否完全安全,或者是否需要做任何准备以防止数据丢失?

(非常希望能够在实时应用程序中设置Code First和Migrations的人员)

2 个答案:

答案 0 :(得分:3)

首先,在制作时确保您的DbMigrationsConfiguration设置AutomaticMigrationsEnabled = false。然后在更改模型后,执行命令Add-Migration。这将生成更改数据库的命令,您可以在执行之前查看是否删除了某些内容。这样您就可以完全控制数据库中发生的事情。

答案 1 :(得分:0)

进行任何类型的数据库更改永远不会完全安全,因为您可能在迁移代码中出错,或者可能存在导致问题的磁盘错误......确实存在许多潜在问题,因此您必须进行备份在进行迁移之前,或任何其他类型的数据库更改。