实体框架迁移可以做什么,FluentMigrator不能做到?

时间:2013-08-23 15:12:49

标签: .net asp.net-mvc entity-framework ef-code-first fluent-migrator

我目前有几个数据库正在使用FluentMigrator,我很想知道实体框架迁移的比较。

EF迁移可以在迁移中播种数据并根据FluentMigrator等环境选择性地运行迁移脚本吗?可以使用标记和配置文件吗?

我已经在使用EF Database First作为我的应用程序的ORM,我想我现在已经阅读了非Code First EF支持EF迁移的地方,但是我的团队一直在考虑重构Code First无论如何,由于Database First方法的一些限制。那么EF Migrations在使用代码优先方法时,是否更有意义使用而不是拥有另一个第三方迁移框架?

2 个答案:

答案 0 :(得分:1)

我没有使用FluentMigrator的经验,但在简要浏览文档后,您似乎必须手动创建迁移?

每次模型更改并运行应用程序时,EF都会提示进行迁移。这使它很容易,但同时又烦人。一旦您启用了迁移,对模型进行的任何更改都将需要迁移。您可以修改迁移,并自动生成。只需观看" down"版本......我有问题。

代码首先是非常无缝的。甚至处理更复杂的对象模型,如子类。您甚至可以指定表的生成方式(每种类型的表,基表和每种类型的表,或单个表和类型键)。

所有这一切,如果您将始终生成c#代码来更新您的数据库,我将使用EF内置的迁移功能。他们为你完成大部分工作。

答案 1 :(得分:0)

Entity Framework自动生成迁移文件并支持LINQ-to-SQL。相反,FluentMigrations仅脚本化迁移,而不会自动生成迁移文件。 FluentMigrations是在Entity Framework Code-First之前开发的。