成员资格 code-first - 在不扩展 class 的情况下将 FK 添加到 IdentityRole

Membership code-first - Add FK to IdentityRole without extending class

正如标题所说,我想在没有 extending/deriving class:

的情况下向 Membership 的 IdentityRole 添加一个 FK

我有:

 public class ApiController
    {
    [Key]
    public int ApiControllerId { get; set; }
    public ICollection<IdentityRole> Roles { get; set; }

我要补充

public ICollection<ApiController> Controllers { get; set; }

到 Membership 的 IdentityRole class,因此 EF 创建 many-many 关系 table(即 ApiControllerRoles)

我已经完成了作业并且我知道如何(通常)执行此操作,除非我在我的项目中实际上没有 class IdentityRole 定义。知道如何在没有 class 定义的情况下添加这个外键,或者更好的是,我如何才能获得这个 class 的副本?

谢谢!

根据 IdentityRole

创建您的 ApplicationRole 实体
public class ApplicationRole : IdentityRole
{
      ...
      public ICollection<ApiController> Controllers { get; set; }
}

public class ApplicationDbContext : IdentityDbContext<ApplicationUser, Role, string, IdentityUserLogin, IdentityUserRole, IdentityUserClaim>
{
      public ApplicationDbContext(): base("DefaultConnection") {}
}

public class ApiController
{
        [Key]
        public int ApiControllerId { get; set; }
        public ICollection<ApplicationRole> Roles { get; set; }