ASP.NET MVC中的每个具体类型身份表的表

时间:2018-07-24 09:22:12

标签: asp.net-mvc entity-framework asp.net-identity dbcontext ef-fluent-api

我将ASP.NET MVC与Identity一起使用。我需要创建两个继承了IdentityUser的表。在EF代码优先模型中。多个选项之一是对每个具体类型(TPC)使用具有EF代码优先表的继承 我有继承自IdentityUser的主类User和继承自主类 User

的两个类 UserClient UserWorker
       public class User : IdentityUser

       public class UserClient : User

       public class UserWorker : User

在DbContextClass中,表的映射是这样的:

        modelBuilder.Entity<UserClient>().Map(m =>
        {
            m.MapInheritedProperties();
            m.ToTable("UserClients");
        });

        modelBuilder.Entity<UserWorker>().Map(m =>
        {
            m.MapInheritedProperties();
            m.ToTable("UserWorkers");
        });

表用户生成的不是这样的:

       modelBuilder.Entity<User>().Property(p => 
       p.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);

好的,很好。但是,当我的DbContext创建数据库架构时,我会使用表AspNetUsers。

enter image description here

问题

  1. 如何无法生成此表AspNetUsers?
  2. 如何使用UserWorker和UserClient映射另一个身份表(AspNetRoles,AspNetUserClaims,AspNetUserLogins,AspNetUserRoles)?

0 个答案:

没有答案