使用codefirst EF4进行数据库重构的最佳做法是什么?首先使用EF 4代码重构代码/数据库模式 - 数据迁移
我很想知道当RecreateDatabaseIfModelChanges选项不可行时人们如何更改类和数据库。数据迁移将需要发生。
目前微软有先用模型做了一个解决方案:
没有人有代码首先一个好的策略?
使用codefirst EF4进行数据库重构的最佳做法是什么?首先使用EF 4代码重构代码/数据库模式 - 数据迁移
我很想知道当RecreateDatabaseIfModelChanges选项不可行时人们如何更改类和数据库。数据迁移将需要发生。
目前微软有先用模型做了一个解决方案:
没有人有代码首先一个好的策略?
的EF团队一直在迁移功能对于应该解决这个问题EF。
斯科特谷在他最近在欧洲各地巡回说,他们应该将很快推出此功能。我屏住呼吸。
激动人心更新中:
现在这已被公布为CTP: http://blogs.msdn.com/b/adonet/archive/2011/07/27/code-first-migrations-august-2011-ctp-released.aspx
我正在处理数据库上下文初始化程序,它将通知网站管理员模型和数据库模式是否不同步并显示不同。这对于喜欢对代码优先模型和数据库模式都有完全控制权的开发人员非常有用。检查出来:
在我CodeFirst应用,本地编译有表示不生产是一个标志的app.config。当我不在生产时,它完全核实并重新创建数据库。由于我的生产数据库用户没有权限删除数据库,即使我的web.config变换以某种方式遗漏了(因此EF试图重新创建数据库),我的生产数据库不会被删除,而是会抛出异常。
我的工作流程是这样的:
步骤2自动创建一个基于最新数据模型的新的干净的数据库,所以我总是知道我有一个最新的数据库,没有可能没有生产准备的开发工作中的工件。
你到底在找什么?你不*有*用CF重构你的数据库模式。 – TheCloudlessSky 2010-08-29 15:40:19
如果您将它吹走并重新创建,则不必重构它,但除此之外,您将需要编写并应用迁移脚本,否则不会?否则它不会匹配代码。 – 2010-08-29 15:48:00