成员代码优先 - 将FK添加到IdentityRole而不扩展类

时间:2015-01-22 21:38:45

标签: c# entity-framework ef-code-first asp.net-membership asp.net-identity

正如标题所说,我想在没有扩展/派生类的情况下向会员的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类,所以EF创建了许多关系表(即ApiControllerRoles)

我完成了我的作业,我知道如何做到这一点(通常),除了我在项目中实际上没有IdentityRole的类定义。知道如何在没有类定义的情况下添加这个外键或者更好,我怎么能得到这个类的副本?

谢谢!

1 个答案:

答案 0 :(得分:2)

ApplicationRole

上创建IdentityRole实体库
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; }