首页 > 后端开发 > C++ > 如何自定义 ASP.NET 身份表名称?

如何自定义 ASP.NET 身份表名称?

Patricia Arquette
发布: 2025-01-17 03:51:09
原创
165 人浏览过

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中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板