您自定义数据库IdentityDbContext

时间:2013-11-05 08:03:38

标签: asp.net-mvc entity-framework authentication

我正在尝试开发一个应用程序并创建自己的数据库,然后首先使用数据库将其反映到实体模型中。所以我现在已经让我们说myOwnDBContext了。 然后我认为将它与IdentityDbContext生成的类混合是一个不错的主意。但是,当我刚刚更改IdentityModel中的连接字符串时,就像这样

 public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
    {
        public ApplicationDbContext()
            : base("myOwnDBConnectionString")
        {
        }
    }

我没有按照我在myOwnDB中的预期生成表格,而是收到了以下错误。

  

实体类型ApplicationUser不是该模型的一部分   目前的背景。

有没有办法可以将IdentityDbContext的defualt数据库与我自己的数据库混合使用?

1 个答案:

答案 0 :(得分:3)

我不确定这是否可以在不使用EF迁移的情况下运行,但我确实可以使用迁移。具体来说,两个DbContext派生类(一个用于自定义实体,一个派生自IdentityDbContext)。

对于迁移,我必须从包管理器控制台为两个上下文启用迁移,并使用-MigrationsDirectory参数将两组迁移放入不同的文件夹(EF6的新功能)。

然后在运行update-database时,会为每个上下文正确创建表。 update-database命令需要-ConfigurationTypeName参数来指定要使用的确切迁移。