【发布时间】:2011-11-22 06:39:38
【问题描述】:
如何仅为单个表/DbSet 切换此约定PluralizingTableNameConvention?据我所知,对于给定的DbContext,我只能对所有DbSets 执行此操作
【问题讨论】:
标签: c# entity-framework-4 entity-framework-4.1
如何仅为单个表/DbSet 切换此约定PluralizingTableNameConvention?据我所知,对于给定的DbContext,我只能对所有DbSets 执行此操作
【问题讨论】:
标签: c# entity-framework-4 entity-framework-4.1
如果您只有一个实体映射到非复数表,那么您可以删除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");
}
}
【讨论】: