您何时首先使用Entity Framework代码?

时间:2011-06-29 15:44:45

标签: entity-framework-4 entity-framework-4.1

我看过一些来自“受人尊敬”的人的演示,展示了实体框架代码第一个功能的优点。所有这些看起来像令人垂涎的玩具!!但有一件事让我感到震惊......

除了在开发中,代码第一个场景何时会使我的项目受益?

让框架为我构建数据库在项目的开发和测试(可移植性!!!!)阶段看起来很棒,但是当我更新实时项目时,我不希望任何这种情况发生。

知道框架何时会覆盖我的数据库并重新插入我的静态数据似乎是一个合理的想法(对于测试场景),但我所有的演示似乎都将代码放在EF程序集中构建它。

EF迁移将明确这一点???也许。任何人都有关于为什么我应该首先使用此代码的观点?

1 个答案:

答案 0 :(得分:0)

在我看来,自动数据库生成仅用于开发和测试。将应用程序移动到生产环境后,应确保已关闭此功能。一旦您决定部署新版本的应用程序,这一点尤为重要。

EF迁移可能会因为我怀疑而改变它。我永远不会让一些自动黑盒子触摸我的生产数据。我们对VS数据库工具的使用经验非常糟糕,因此我们永远不会让他们直接使用真实数据 - 我们只让他们为我们生成脚本,我们精确测试这些脚本并在生产中手动执行这些脚本。有时它甚至需要添加一些临时表的附加迁移脚本。这正是我认为与EF一起使用的方法。让代码首先在开发环境中创建一个新数据库,使用工具为旧数据库创建差异脚本,测试并部署它。

但最重要的是:生产数据库的任何升级或更改都应该从备份开始,因此如果工具失败,您可以随时返回。

首先选择代码/数据库优先/模型首先取决于how you like to develop application的方式以及您的其他要求。