chi*_*s0v 5 c# sql asp.net-mvc entity-framework asp.net-identity
我重命名了标准身份表:
public class User : IdentityUser
{
//...
public string Name { get; set; }
public string Surname { get; set; }
public DateTime? RegisteredDate { get; set; }
public DateTime? LastLoginDate { get; set; }
//...
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<IdentityUser>().ToTable("Users");
modelBuilder.Entity<User>().ToTable("Users");
modelBuilder.Entity<IdentityRole>().ToTable("Roles");
modelBuilder.Entity<Role>().ToTable("Roles");
modelBuilder.Entity<IdentityUserRole>().ToTable("UserRoles");
modelBuilder.Entity<IdentityUserLogin>().ToTable("UserLogins");
modelBuilder.Entity<IdentityUserClaim>().ToTable("UserClaims");
}
Run Code Online (Sandbox Code Playgroud)
并得到这个:

我需要做什么才能modelBuilder删除此专栏?
该Discriminator列在 Table-Per-Hierarchy 继承场景中使用且必需。
Code First 必须添加一个特殊的列来区分持久类。这是\xe2\x80\x99t 对象模型中持久类的一个属性;it\xe2\x80\x99s 由 EF Code First 内部使用。默认情况下,列名称为Discriminator,类型为字符串。这些值默认为持久类名称 \xe2\x80\x94(在本例中为 )User。
\n更多信息
更新
\n\n如果您不想要该列,您可以通过在上下文中添加 a 来使User模型成为模型的一部分:IdentityUserDbSet<User>
modelBuilder.Entity<User>().ToTable("Users");\nRun Code Online (Sandbox Code Playgroud)\n