1.登录进sqlserver后,数据库表名是自动生成的
2.我们可以覆盖基类的OnModelCreating方法,在方法中指定表名的映射,
在DbContext中覆盖基类的方法
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{ base.OnModelCreating(modelBuilder);//Change the name of the table bo be users instead of aspnetusers
modelBuilder.Entity<IdentityUser>().ToTable("Users"); modelBuilder.Entity<ApplicationUser>().ToTable("Users"); modelBuilder.Entity<IdentityRole>().ToTable("Roles"); modelBuilder.Entity<IdentityUserClaim>().ToTable("UserClaims"); modelBuilder.Entity<IdentityUserLogin>().ToTable("UserLogins"); modelBuilder.Entity<IdentityUserRole>().ToTable("UserRoles"); }3.这时运行程序提示进行数据迁移
4.打开工具-》NuGet包管理器-》程序包管理器控制台
输入 Enable-Migrations会自动生成文件夹Migrations
5.输入 Add-Migration ChangeTableName 回车,添加迁移文件
6.输入Update-Database 回车,更新数据库,这时发现报错,异常了,查看代码发现,RenameTable首先对表进行了重命名,然后又删除外键和索引,很明显这时的表明已经重命名了,无法根据表明查找到对应的外键和索引,调整顺序
重新运行Update-Database 表名更新成功!