我在数据库中有很多带有前缀“tbl”的表,比如tblCustomer,当使用EF6工具生成模型时(添加 - > 新项 - > 数据 - > ADO.NET实体数据模型)并从数据库中选择代码优先,EF生成所有带有tbl的类作为前缀,如何编辑生成模板以取消这些前缀?
Rowan Miller在此帖Customizing ‘Reverse Engineer Code First’ In The EF Power Tools中解释了如何编辑这些生成模板,但不知道如何使用EF 6中的新整合工具
答案 0 :(得分:1)
您可以更轻松地简单地更改类的名称并使用DataAnnotations(查找名为"表和列"的部分)在生成后映射到正确的表代码第一模型。
using System.ComponentModel.DataAnnotations;
[Table("tblMyModel")]
public class MyModel {
public int ID {get; set;}
//etc
}
或者您也可以使用FluentAPI。
protected override void OnModelCreating(DbModelBuilder modelBuilder) {
modelBuilder.Entity<MyModel>()
.ToTable("tblMyModel");
}
这当然对于大型表结构可能不实用,但它可以工作。
如果您想进入EF6提供的更高级选项,可以阅读Code First Conventions。