Entity framework ASP.NET标识表生成和项目解耦
ASP.NET Identity OWIN with Entity Framework将以下表格添加到数据库中:Entity framework ASP.NET标识表生成和项目解耦,entity-framework,migration,asp.net-mvc-5,asp.net-identity,Entity Framework,Migration,Asp.net Mvc 5,Asp.net Identity,ASP.NET Identity OWIN with Entity Framework将以下表格添加到数据库中: ASPNetUsers ASPNeRoles ASPNeTokens ASPNetUserClaims ASPNetUserLogins ASPNetUserManagements ASPNetUserRoles ASPNetUserSecrets 有人能给我解释一下这些名字是从哪里来的吗?我仔细查看了我的解决方案和项目文件,没有看到任何对它们的引用。这些名称是可定制的吗(我的意思
ASPNetUsers
ASPNeRoles
ASPNeTokens
ASPNetUserClaims
ASPNetUserLogins
ASPNetUserManagements
ASPNetUserRoles
ASPNetUserSecrets
如果我想从MVC项目以外的项目迁移ASP.NET标识表,我该怎么做?注意:这些表名看起来来自Identity 1.0的预发布版本,但简单的回答是,它们来自IdentityDbContext.OnModelCreating,它指定了各种实体的表名 您的IdentityDbContext通常会传递到UserStore。无论您在何处创建UserManager,都可能在何处同时构建UserStore和IdentityDbContext。请注意,UserStore的默认构造函数创建了一个新的IdentityDbContext,它使用“DefaultConnection”字符串,因此这可能是您没有看到的神奇步骤 IdentityDbContext
protected override void OnModelCreating(DbModelBuilder modelBuilder)
我不同意:询问如何更改表名与询问这些名称的来源不同。另外,我的问题是关于解耦的问题,这与前面提到的问题不同。答案可能很微妙,但答案是您覆盖了
System.Data.Entity.DbModelBuilder
entities。我认为可以推断默认的表名驻留在那里。你可以使用反编译器来确认我的问题是“它们在哪里”——而不是“我如何使用反编译器对Microsoft的代码进行反向工程并找出发生了什么”。因此,我不认为这是对我的问题的回答。
protected override void OnModelCreating(DbModelBuilder modelBuilder)