从模型更新数据库(模型更改时)?

时间:2011-11-27 13:49:23

标签: .net asp.net-mvc-3 entity-framework ef-model-first

我正在使用MVC3和Model First方法开发一个应用程序(用于我的教育,而非商业用途)。

我创建了一个模型并从中生成了SQL CE 4数据库。

接下来,我可能需要更改我的模型 - 即向表中添加一列,而不是主键或外键列。

我只看到一个选项“从模型生成数据库”,这将删除我的数据库并创建一个新数据库。

有没有办法“从模型更新数据库”,它将保留数据库并只添加新列,用一些默认值或空值填充它们?

类似的问题 Update database from model - Entity Framework 有人在去年被问到并建议将来可以使用这个解决方案 - 但从那以后有什么变化吗?

3 个答案:

答案 0 :(得分:3)

有一个包装可以解决这个问题。它是NuGet存储库中的EntityFramework.Migrations。有一个很好的阅读: http://www.hanselman.com/blog/EntityFrameworkCodeFirstMigrationsAlphaNuGetPackageOfTheWeek10.aspx

套餐本身已开启: http://nuget.org/List/Packages/EntityFramework.Migrations

Scott Hanselman也在MIX 11上发表了http://channel9.msdn.com/Events/MIX/MIX11/FRM02(非常棒的视频,展示了脚手架,elmah,glimpse等的用法)

答案 1 :(得分:1)

另见msdn article 该页面有几个关于使用迁移工具

的演练的链接

答案 2 :(得分:0)

使用我在NuGet页面中找到的内容更新@torm的答案

  

所有者已取消列出此套餐。这可能意味着包裹   已弃用或不应再使用。