ASP.NETCoreIdentity在AspNetUserRoles中添加了额外的外键
创始人
2024-09-17 21:30:51
0

在Identity中,AspNetUserRoles表通过User和Role实体与AspNetUsers和AspNetRoles表进行关联。ASP.NET Core Identity在AspNetUserRoles表中添加了两个外键AspNetUsersId和RoleId,来表示User-AspNetUserRole和AspNetUserRole-Role之间的关联。

对于这个问题的解决方法,我们可以在模型创建时手动配置AspNetUserRoles表的关联。代码示例如下:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    base.OnModelCreating(modelBuilder);

    modelBuilder.Entity>(entity => {
        entity.HasKey(key => new { key.UserId, key.RoleId });

        entity.HasOne(d => d.Role)
            .WithMany(p => p.Users)
            .HasForeignKey(d => d.RoleId)
            .IsRequired();

        entity.HasOne(d => d.User)
            .WithMany(p => p.Roles)
            .HasForeignKey(d => d.UserId)
            .IsRequired();
    });
}

在上述代码中,我们在模型创建方法中手动指定了IdentityUserRole实体的主键,并配置了AspNetUserRoles表的两个外键。我们使用HasOne和WithMany方法配置User和Role之间的关联,并指定了外键属性。其中,IsRequired方法用于指定外键属性是否为必需的。

通过手动指定AspNetUserRoles表的关联,我们就能解决ASP.NET Core Identity在AspNetUserRoles表中添加额外外键的问题。

相关内容

热门资讯

透视新版(wpk俱乐部)德扑人... 1、透视新版(wpk俱乐部)德扑人工智能软件(详细辅助2025版教程)真是真的是有挂;代表性(透视辅...
德州微扑克辅助!pokerma... 1、德州微扑克辅助!pokermastersteam外挂,(AApOKER)一向真的是有挂(详细透视...
透视中牌率(wepoke ai... 透视中牌率(wepoke ai辅助)wepoke软件透明挂是真的么(详细辅助教你攻略)确实存在有挂1...
wpk俱乐部!微扑克怎么加入俱... wpk俱乐部!微扑克怎么加入俱乐部,(aapOker)确实有挂(详细透视解密教程)1、很好的工具软件...
透视免费(wpk透视辅助)德州... 透视免费(wpk透视辅助)德州wpk辅助真的(详细辅助插件教程)一向是有挂;致您一封信;亲爱wpk透...
德州之星有外挂!wepower... 德州之星有外挂!wepower系统规律,(AAPOker)往昔有挂(详细辅助AI教程)1、不需要AI...
透视免费(wepoke真的有挂... 透视免费(wepoke真的有挂)德扑赔率胜率计算(详细辅助可靠教程)一向真的是有挂是一款可以让一直输...
wepoke辅助德之星!微扑克... 1、wepoke辅助德之星!微扑克发牌算法,(wPk)好像是有挂(详细辅助玩家教你);详细教程。2、...
wpk发牌逻辑!德州wpk辅助... wpk发牌逻辑!德州wpk辅助,(wpK)从前有挂(详细辅助大神讲解);致您一封信;亲爱wpk发牌逻...
透视科技(WePoKe透视挂)... 透视科技(WePoKe透视挂)wepoke显示有(详细辅助必胜教程)一直真的是有挂1、在WePoKe...