Je suis en train de sortir tout mon Identité des utilisateurs et de leurs rôles associés pour une gestion de l'utilisateur admin de la page. Je pensais que ce serait assez facile, mais apparemment pas. J'ai essayé de suivre la solution suivante: https://stackoverflow.com/a/43562544/5392786 mais cela n'a pas fonctionné jusqu'à présent.
Voici ce que j'ai à ce jour:
ApplicationUser:
public class ApplicationUser : IdentityUser
{
public List<IdentityUserRole<string>> Roles { get; set; }
}
DBContext
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options)
: base(options)
{
}
}
Démarrage le code d'identification de
services.AddIdentity<ApplicationUser, IdentityRole>(options => options.Stores.MaxLengthForKeys = 128)
.AddEntityFrameworkStores<ApplicationDbContext>()
.AddDefaultTokenProviders();
Rasoir Page où je veux afficher la liste:
public class IndexModel : PageModel
{
private readonly UserManager<ApplicationUser> userManager;
public IndexModel(UserManager<ApplicationUser> userManager)
{
this.userManager = userManager;
}
public IEnumerable<ApplicationUser> Users { get; set; }
public void OnGetAsync()
{
this.Users = userManager.Users.Include(u => u.Roles).ToList();
}
}
J'obtiens l'erreur suivante lors de l'appel d' userManager.Users.Include(u => u.Roles).ToList();
:
MySql.Les données.MySqlClient.MySqlException: "Unknown column 'u.Les rôles.ApplicationUserId "dans" liste des champs"