Jam*_*mes 20 entity-framework ef-migrations
我正在学习EF4.3迁移,我从ado.net团队博客上读过这两篇文章:
http://blogs.msdn.com/b/adonet/archive/2012/02/09/ef-4-3-code-based-migrations-walkthrough.aspx
http://blogs.msdn.com/b/adonet/archive/2012/02/09/ef-4-3-automatic-migrations-walkthrough.aspx
但在阅读了这两篇文章之后,我仍然不清楚它们之间的差异以及何时使用基于代码的迁移,何时使用自动迁移.有人可以指导我吗?
谢谢!
Lad*_*nka 22
这些文章非常清楚,所以如果你不理解它们之间的区别,那就意味着你在阅读文本时并没有集中注意力,而且你也可能没有按照自己编写的例子来遵循文本.
自动迁移只是一个神奇的工具.运行应用程序时,您将始终使用最新版本获取数据库,因为EF将在每次需要时执行隐式迁移 - 在最纯粹的版本中,除了启用自动迁移之外,您永远不需要执行任何操作.
自动迁移有时是不够的.您需要为迁移代码添加一些自定义或运行一些其他SQL命令,例如转换数据.在这种情况下,您可以通过调用Add-Migration
command 添加基于代码的显式迁移 显式迁移显示将在迁移期间执行的所有迁移代码(没有额外的魔法).
如果关闭自动迁移,则必须始终定义显式迁移,以便在明确定义的显式步骤中定义数据库升级过程.这对于需要同时使用升级和降级到特定版本的情况尤其有用.