ASP.Net 标识到使用第三个表的自定义表引用



我想知道如何使用来自 ASP.NET 的身份,以便创建用于链接 2 个不同表的表。

例如,我们有ASP。网络用户和 ASP。网络角色。默认标识提供者将生成 ASP。NetUsers用于存储分配给用户的角色的角色。

我想对另外 2 张表做同样的事情。假设我有默认用户表和一个名为 Context 的表。

我想要ASP。网络用户、上下文和 ASP。NetUsers用于链接用户一个或多个上下文的上下文。

我现在拥有的是上下文表,在用户表中有一个外键 Asp.Net 我想摆脱并使用关系表。可能吗?

这就是我现在拥有它的方式:

public class ApplicationUser : IdentityUser
    {
        public virtual ApplicationUserProfile UserProfile {get;set;}
        public virtual ICollection<ApplicationUserContext> UserContext { get; set; }
        public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<ApplicationUser> manager)
        {
            // Note the authenticationType must match the one defined in CookieAuthenticationOptions.AuthenticationType
            var userIdentity = await manager.CreateIdentityAsync(this, DefaultAuthenticationTypes.ApplicationCookie);
            // Add custom user claims here
            return userIdentity;
        }
    }

谢谢!

给定您拥有的代码,您需要在 ApplicationUserContext 类中添加以下内容:

public virtual ICollection<ApplicationUser> Users {get;set;}

您还需要确保 dbcontext 类具有返回 ApplicationUserContext 类型的数据库集的属性:

public DbSet<ApplicationUserContext> Courses { get; set; }

它可能已经有了这个。

这样做是在两个类之间建立多对多关系,EF 将生成一个映射表来跟踪此关系。

相关内容

  • 没有找到相关文章

最新更新