Maison >développement back-end >C++ >Comment puis-je personnaliser les noms de table AspNet.Identity ?

Comment puis-je personnaliser les noms de table AspNet.Identity ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-17 04:03:12442parcourir

How Can I Customize AspNet.Identity Table Names?

Personnaliser les noms de tables dans ASP.NET Identity

Lors de l'utilisation de l'identité ASP.NET dans un projet, le préfixe de nom de table par défaut pour les données liées à l'utilisateur est « AspNet ». Bien que ces noms puissent fonctionner dans certains scénarios, vous souhaiterez peut-être dans certains cas utiliser des noms de table personnalisés.

Renommer la table AspNetUsers

Pour modifier le nom de la table AspNetUsers, remplacez la méthode OnModelCreating dans DbContext et fournissez le nouveau nom de la table :

<code class="language-csharp">protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    base.OnModelCreating(modelBuilder);
    modelBuilder.Entity<IdentityUser>().ToTable("MyUsers");
}</code>

Remplacer tous les noms de tables AspNet

Pour remplacer tous les noms de tables AspNet par le vôtre, fournissez un nom personnalisé pour chaque entité :

<code class="language-csharp">protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    base.OnModelCreating(modelBuilder);

    modelBuilder.Entity<IdentityUser>().ToTable("MyUsers").Property(p => p.Id).HasColumnName("UserId");
    modelBuilder.Entity<ApplicationUser>().ToTable("MyUsers").Property(p => p.Id).HasColumnName("UserId");
    modelBuilder.Entity<IdentityUserRole>().ToTable("MyUserRoles");
    modelBuilder.Entity<IdentityUserLogin>().ToTable("MyUserLogins");
    modelBuilder.Entity<IdentityUserClaim>().ToTable("MyUserClaims");
    modelBuilder.Entity<IdentityRole>().ToTable("MyRoles");
}</code>

Remarque :

  • Le nom de la table doit être modifié avant de créer la table.
  • Si les tables par défaut existent déjà, vous devrez peut-être les supprimer et les recréer manuellement.
  • Assurez-vous de mettre à jour tout code ou référence qui repose sur le nom de table par défaut.

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!

Déclaration:
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