Дублировать внешние ключи при переименовании таблиц Identity ASP.NET

Я перешел в следующий этот вопрос для переименования таблиц Identity ASP.NET:

modelBuilder.Entity<IdentityUserClaim>().ToTable("UserClaim");
modelBuilder.Entity<IdentityUserRole>().ToTable("UserRole");
modelBuilder.Entity<IdentityUserLogin>().ToTable("UserLogin");
modelBuilder.Entity<IdentityRole>().ToTable("Role");
modelBuilder.Entity<IdentityUser>().ToTable("User");
modelBuilder.Entity<ApplicationUser>().ToTable("User");

Однако это приводит к двум свойствам для отношения UserClaim to User - UserId и IdentityUser_Id:

enter image description here

Можно ли это исправить?

Ответ 1

Вам следует пропустить следующую строку, тогда она отлично работает:

modelBuilder.Entity<IdentityUser>().ToTable("User");

Итак, вам нужно только следующее сопоставление:

modelBuilder.Entity<IdentityUserClaim>().ToTable("UserClaim");
modelBuilder.Entity<IdentityUserRole>().ToTable("UserRole");
modelBuilder.Entity<IdentityUserLogin>().ToTable("UserLogin");
modelBuilder.Entity<IdentityRole>().ToTable("Role");
modelBuilder.Entity<ApplicationUser>().ToTable("User");

Надеюсь, что это поможет.