Если вы хотите, чтобы у пользователя было несколько ролей, вы можете добавить класс ApplicationRole
, который наследует IdentityRole
, и изменить отношение между ApplicationUser
и ApplicationRole
на один-ко-многим см. следующее:
Класс ApplicationRole
public class ApplicationRole:IdentityRole
{
public string Location { get; set; }//add the stuff you want
public ApplicationUser ApplicationUser { get; set; }
}
Класс ApplicationUser
public class ApplicationUser:IdentityUser
{
public List<ApplicationRole> ApplicationRoles { get; set; }
}
Настройка отношения один-ко-многим в Fluent API
public DbSet<ApplicationUser> ApplicationUser { get; set; }
public DbSet<ApplicationRole> ApplicationRole { get; set; }
protected override void OnModelCreating(ModelBuilder builder)
{
builder.Entity<ApplicationUser>()
.HasMany(u => u.ApplicationRoles)
.WithOne(r => r.ApplicationUser);
}