【发布时间】:2011-05-11 19:29:15
【问题描述】:
传统上,我总是手工编写我的 sql 脚本,因此它们既漂亮又干净(我不喜欢生成的脚本)并且发布到发布,我提供了一个全新的安装脚本和一个来自以前版本的迁移脚本创建新表,更改现有表等。这都是非常标准的。
我真的没有太多时间先玩 EF 4 代码,但如果它在生产环境中确实可行,我很感兴趣使用它。
假设你有一个代码优先的方法,如果一个数据库不存在,它将自动创建。如果您发布具有架构/模型更改的新版本软件会发生什么。 EF 是否足够智能以更新数据库架构以匹配更新后的 EF 模型?
场景
- 客户端在其服务器上安装 asp.net MVC 网站。首次运行时,会创建一个新数据库
- 客户使用网站一段时间后,数据库中填充了一些数据
- 同时网站新版本发布,EF模型发生变化
- 客户端下载新版本,部署网站并指向现有数据库
代码首先只对初始部署有用,还是足够聪明地将现有数据库版本更新为这样的版本?
【问题讨论】:
标签: asp.net-mvc entity-framework entity-framework-4 ef4-code-only