EF6 覆盖个人 table 的模型构建器?
EF6 Override model builder for individual table?
我对我的项目有点了解,运行 成为多元化的绊脚石:
我需要它!
默认情况下,将我的“...历史”table 重命名为“...历史”。从许多文章中,我得到了以下内容:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
这太棒了,如果我想更改整个 dbcontext 以删除其他 15 table 已经依赖的复数形式。我添加了覆盖,我想要工作的 table 确实如此,许多其他人开始失败。
此时,有没有办法覆盖特定 table 的模型构建器,有些方法如何?如果没有,我该如何解决这个问题...
选项3)(丑陋):让EF命名我的tables?处理 "Histories" 和 "Lists"
使用:MVC5、EF6.0、VS 2015 社区,sql 2008 服务器通过连接字符串,代码优先。
使用 ToTable() 覆盖默认设置:
modelBuilder.Entity<History>().ToTable("History");
你也可以通过注释来完成:
[Table("History")]
public class History{}
我对我的项目有点了解,运行 成为多元化的绊脚石: 我需要它!
默认情况下,将我的“...历史”table 重命名为“...历史”。从许多文章中,我得到了以下内容:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
这太棒了,如果我想更改整个 dbcontext 以删除其他 15 table 已经依赖的复数形式。我添加了覆盖,我想要工作的 table 确实如此,许多其他人开始失败。
此时,有没有办法覆盖特定 table 的模型构建器,有些方法如何?如果没有,我该如何解决这个问题...
选项3)(丑陋):让EF命名我的tables?处理 "Histories" 和 "Lists"
使用:MVC5、EF6.0、VS 2015 社区,sql 2008 服务器通过连接字符串,代码优先。
使用 ToTable() 覆盖默认设置:
modelBuilder.Entity<History>().ToTable("History");
你也可以通过注释来完成:
[Table("History")]
public class History{}