删除约定

你可以通过重写 OnModelCreating 方法来删除 System.Data.Entity.ModelConfiguration.Conventions 命名空间中定义的任何约定。

以下示例删除 PluralizingTableNameConvention。

public class EshopContext : DbContext 
{ 
    public DbSet<Product> Products { set; get; }
    . . . 
 
    protected override void OnModelCreating(DbModelBuilder modelBuilder) 
    { 
        modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); 
    } 
}

默认情况下,EF 将创建 DB 表,实体类名称后缀为’s’。在此示例中,Code First 配置为忽略 PluralizingTableName 约定,因此,将创建 dbo.Products table dbo.Product table 而不是 dbo.Products table。