使用EF4迁移工具和模型优先方法

时间:2012-04-16 18:52:38

标签: .net entity-framework-4 database-migration ef-model-first

首先使用代码时,EF迁移实用程序似乎相当不错。

基于this blog post,我尝试在我们使用模型优先的项目中进行设置。运行Enable-Migrations命令时,出现以下错误:

  

不支持从使用Database First或Model First创建的DbContext创建DbModelBuilder或编写EDMX。 EDMX只能从不使用现有DbCompiledModel创建的Code First DbContext中获取。

是否有任何方法可以使用EF迁移而无需切换到代码优先?

2 个答案:

答案 0 :(得分:3)

我一直在寻找相同的解决方案并发现:Entity Designer Database Generation Power Pack 安装完成后,当您选择“从模型中生成数据库...”时,它将弹出一个新向导,您可以选择“生成迁移T-SQL”。

答案 1 :(得分:3)

关于如何做到这一点,我的博客文章不完整。不确定它是否符合您的需要,但似乎是迄今为止唯一可用的方法。

基本上,您使用自定义t4从模型生成DbMigrationsConfiguration和DbContext,而您根本不需要运行Enable-Migration。只需在Package Manager控制台中运行Add-Migration和Update-Database。

http://blog.amusedia.com/2012/08/entity-framework-migration-with-model.html

我将更新博客条目和t4,以便以后更加用户友好。