在“包管理器”中将迁移文件夹添加到我的解决方案时出错,输入“enable-migration”visual studio 2012

时间:2013-02-07 04:36:13

标签: entity-framework migration

PM>启用的迁移

我收到了这样的错误(eManager)。

  1. 我的VS解决方案中有两个项目,如下所示:
    • eManager.Domain
    • eManager.Web
  2. 我将eManager.Domain的引用添加到eManager.Web,即使它每次都弹出相同的错误。

    错误:

    More than one context type was found in the assembly 'eManager.Web'.
    To enable migrations for eManager.Web.Infrastructure.DepartmentDb, use Enable-Migrations -ContextTypeName eManager.Web.Infrastructure.DepartmentDb.
    To enable migrations for eManager.Web.Models.UsersContext, use Enable-Migrations -ContextTypeName eManager.Web.Models.UsersContext.
    

2 个答案:

答案 0 :(得分:0)

使用this文章及此link 问题很容易解决。如错误所述,您可以使用-Co​​ntextTypeName标志指定上下文类名。请注意,您只能对项目中的一个上下文进行迁移,因此,如果要对两个上下文进行迁移,则需要将一个上下文移动到另一个项目。同样,我的建议是删除Internet项目模板创建的现有UsersContext,并在您自己的上下文中获取用户配置文件的所有权。

答案 1 :(得分:0)

在程序包管理器控制台中,您必须将Default Projetc Drop更改为Web项目 并且在exec enable-migrations之后你想要的上下文:

PM> Enable-Migrations -ContextTypeName Web.Infraestruture.DepartmentDb

但请记住,您已将网络设置为Startproject。