我如何使用Entity Framework 4.2执行数据库迁移?
我刚开始潜入ASP.net MVC3。 我来自Django背景。 我喜欢Django的其中一件事就是名为“South”的插件。 它允许我在代码中修改我的模型,然后运行一条命令,找出发生了什么变化,并相应地更新数据库。
如果我在EF4中使用“代码优先”方法添加,删除或重命名字段,会发生什么情况? 它只是添加或删除字段,就是这样吗? 如果我想要做一些事情,比如添加一个新字段,然后运行Linq-to-SQL查询来填充新字段,然后删除旧字段? 我想要记录这一点,以便在我的生产服务器上部署更改时,它会按顺序运行这3个命令。
有没有这样的事情? 或者人们如何处理这样的情况? (这很常见......)
编辑:找到一些链接。
以下是来自微软MVP大卫海登的精彩教程:
http://www.davidhayden.me/blog/asp.net-mvc-4-and-entity-framework-database-migrations
不知道4.2 - 但我安装了最新的EF(4.3.1),它的工作就像一个魅力。
令人印象深刻 - 我是一个Rails家伙:P
发生什么取决于您的初始化,我将使用点网络方式讨论“标准”。
深入探究:
数据库初始化策略 - 查看顶部,这里使用了“DropCreateDatabaseAlways”,所以它会一直删除数据库并重新创建它(还有其他可能性)。 - 它说EF如何应对数据库更改。
以下是可能的数据库初始化
如果你想迁移,有两种方式: - 魔术 - 没有魔法
你应该知道的是,迁移实际上是1周(EF 4.2),它已经在EF 4.1中实现,尽管没有完全支持(不同的DB,...),但它正在改进。
这取决于你有多少时间,但我正在等待实施4.2和EF迁移,我将在本周末的“测试项目”中实施它,看看是否一切顺利并回应Ado .Net团队博客(请参阅Magic - No-Magic的链接)。 虽然我不认为会有任何问题。
祝你好运:)
链接地址: http://www.djcxy.com/p/15979.html上一篇: How can I perform database migration using Entity Framework 4.2?