Maison > base de données > tutoriel mysql > Comment récupérer efficacement les utilisateurs et leurs rôles dans l'identité .NET Core 2.1 ?

Comment récupérer efficacement les utilisateurs et leurs rôles dans l'identité .NET Core 2.1 ?

Susan Sarandon
Libérer: 2024-12-04 17:08:12
original
272 Les gens l'ont consulté

How to Efficiently Retrieve Users and Their Roles in .NET Core 2.1 Identity?

Récupération des utilisateurs et des rôles associés dans l'identité .NET Core 2.1

De nombreux projets nécessitent une fonctionnalité de gestion des utilisateurs pour gérer et afficher les utilisateurs et leurs associés. rôles. Cependant, l'obtention de ces informations peut ne pas être simple.

Solution :

Au départ, l'utilisation de la propriété Roles d'IdentityUser était courante, mais elle a été supprimée dans .NET Core. Une approche basée sur les suggestions récentes de la communauté consiste à introduire des classes supplémentaires et à modifier la structure de la base de données.

Structure de la base de données modifiée :

Présentation des classes suivantes :

  • ApplicationUserRole
  • ApplicationRole

Extension ApplicationUser avec une propriété UserRoles et des références aux nouvelles classes.

Modifications de DbContext :

  • Héritage d'IdentityDbContext avec les paramètres génériques corrects pour s'adapter aux nouvelles classes.
  • Remplacer la méthode OnModelCreating pour établir des relations et définir une clé étrangère contraintes.

Configuration de l'identité de démarrage :

  • Maintenir la configuration d'identité précédente et garantir que les paramètres génériques corrects sont utilisés.

Chargement impatient des rôles d'utilisateur :

Enfin, quand récupérant les utilisateurs, chargez avec impatience les UserRoles et leurs rôles associés :

this.Users = userManager.Users.Include(u => u.UserRoles).ThenInclude(ur => ur.Role).ToList();
Copier après la connexion

Considérations ASP Core 2.2 :

  • IdentityUserRole est désormais défini avec Guid comme type , pas une chaîne.
  • Le code ModelBuilder devra peut-être être supprimé pour permettre les migrations vers work.

En suivant cette approche, vous pouvez récupérer efficacement les utilisateurs et leurs rôles associés dans l'identité .NET Core 2.1.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal