首頁 > 後端開發 > C++ > 如何自訂 AspNet.Identity 表名稱?

如何自訂 AspNet.Identity 表名稱?

Linda Hamilton
發布: 2025-01-17 04:03:12
原創
403 人瀏覽過

How Can I Customize AspNet.Identity Table Names?

在 ASP.NET Identity 中自訂表名

在專案中使用 ASP.NET Identity 時,使用者相關資料的預設表名前綴為「AspNet」。雖然這些名稱可能適用於某些場景,但在某些情況下,您可能需要使用自訂表名。

重新命名 AspNetUsers 表

要更改 AspNetUsers 表的名稱,請重寫 DbContext 中的 OnModelCreating 方法並提供新的表名:

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

取代所有 AspNet 表名

要將所有 AspNet 表名替換為您自己的表名,請為每個實體提供自訂名稱:

<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>
登入後複製

注意:

  • 必須在建立表格之前更改表名。
  • 如果預設表已存在,您可能需要手動刪除並重新建立它們。
  • 確保更新依賴預設表名的任何程式碼或參考。

以上是如何自訂 AspNet.Identity 表名稱?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板