Code-First Migrations 随 Entity Framework 4.3 一同发布

  • Roopesh Shenoy
  • 曹如进

2012 年 3 月 1 日

话题:语言 & 开发

Entity Framework 4.3 版本终于为开发者带来了迁移(Migrations)功能,从此以后使用 EF 不必依赖于单独预发布的迁移库了。

什么是 EF 迁移呢?如果你正在使用Entity Framework Code-First,那么借助迁移功能,你可以不需要删除再重新创建数据库模式(database schema),而只要通过更新就能将改动映射到你的POCO类中。该过程包含生成 DDL 语句创建新的表和列,改变已有的表和列等等。虽然迁移功能作为Nuget 包开放已经有了一阵子(如果出于某些遗留原因,你还在使用低版本的 Entity Framework,那么你还可以继续使用那个 Nuget 包),但是它并没有得到微软的官方支持。

有一段时间,迁移一直是 Entity Framework呼声最高的功能之一。

MSDN 团队博客还分别介绍了自动迁移基于代码的迁移。前者——自动迁移(Automatic Migrations)使用了 Visual Studio 内置功能以及基于代码的迁移;而后者——基于代码的迁移(Code Based migrations)使用的是纯代码的方式。理想情况下,只有在需要覆写默认行为时,例如重命名列名而不是删除再创建一个新的列,或者为增加的列提供默认值时,你才会用得到基于代码的迁移。

另外,迁移还能够创建用于生产数据库的部署脚本。

Entity Framework是微软为.NET 应用程序提供的对象关系映射器。

查看英文原文:http://www.infoq.com/news/2012/02/migrations

语言 & 开发