我该如何仅为单个表/DbSet切换此约定
PluralizingTableNameConvention
?据我所知,我只能为给定DbContext
的所有DbSets
执行此操作。PluralizingTableNameConvention
?据我所知,我只能为给定DbContext
的所有DbSets
执行此操作。如果你只有一个实体映射到未使用复数形式的表,则可以移除PluralizingTableNameConvention
并手动配置实体的表名。
public class MyContext : DbContext
{
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
modelBuilder.Entity<Item>().ToTable("Items");
}
}
或者如果反过来的话
public class MyContext : DbContext
{
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<Item>().ToTable("Item");
}
}