首頁 >後端開發 >C++ >如何自訂 ASP.NET 身份表名稱?

如何自訂 ASP.NET 身份表名稱?

Patricia Arquette
Patricia Arquette原創
2025-01-17 03:51:09207瀏覽

How to Customize ASP.NET Identity Table Names?

自訂 ASP.NET 身份表名稱

ASP.NET Identity 使用以「AspNet」為前綴的預設表名稱。 本文介紹如何自訂這些名稱以適合您的應用程式的命名約定。

方法一:擴充身分模型

要更改表格名稱,請擴充 IdentityModel.cs 檔案並覆寫 OnModelCreating 中的 DbContext 方法。使用 EntityTypeConfiguration<T> 定義自訂表名稱。

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

    modelBuilder.Entity<IdentityUser>().ToTable("MyUsers");
    modelBuilder.Entity<ApplicationUser>().ToTable("MyUsers"); // If ApplicationUser extends IdentityUser
}</code>

方法二:直接修改DbContext

或者,直接修改您的 DbContext 類別:

<code class="language-csharp">public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
    public ApplicationDbContext() : base("DefaultConnection") { }

    protected override void OnModelCreating(System.Data.Entity.DbModelBuilder modelBuilder)
    {
        base.OnModelCreating(modelBuilder);

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

這兩種方法都刪除了「AspNet」前綴,讓您可以使用您喜歡的表名稱。 選擇最適合您的專案結構的方法。

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

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn