ASP.NET ID テーブル名の調整
ASP.NET Identity は、デフォルトで「AspNet」というプレフィックスが付いたテーブルを生成します。 これは、プロジェクトの命名規則と衝突する可能性があります。 このガイドでは、これらのテーブル名をカスタマイズする方法を説明します。
OnModelCreating
Identity のテーブル名を変更する鍵は、OnModelCreating
クラス内の DbContext
メソッドをオーバーライドすることにあります。この方法では、データ モデルを構成し、カスタム テーブル名を指定できます。
以下の例は、「AspNetUsers」テーブルの名前を「MyUsers」に変更する方法を示しています。
<code class="language-csharp">protected override void OnModelCreating(DbModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Entity<IdentityUser>().ToTable("MyUsers"); }</code>
すべての ID テーブルのカスタマイズ
すべての ID テーブルの名前を変更するには、OnModelCreating
内に希望の名前を指定します。次の例では、すべてのテーブルに「My」プレフィックスを使用しています:
<code class="language-csharp">protected override void OnModelCreating(System.Data.Entity.DbModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Entity<IdentityUser>().ToTable("MyUsers").Property(p => p.Id).HasColumnName("UserId"); modelBuilder.Entity<IdentityRole>().ToTable("MyRoles"); modelBuilder.Entity<IdentityUserRole>().ToTable("MyUserRoles"); modelBuilder.Entity<IdentityUserLogin>().ToTable("MyUserLogins"); modelBuilder.Entity<IdentityUserClaim>().ToTable("MyUserClaims"); }</code>
重要な考慮事項: テーブルの名前を変更した後、元の「AspNet」接頭辞付きテーブルを参照するコードまたはデータベース クエリを更新して、新しい名前を反映させます。 そうしないとエラーが発生します。
以上がASP.NET ID テーブル名をカスタマイズするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。