使用Entity Framework的第4版,您可以选择执行他们称之为Code First的操作。问题是你的类和字段/属性的命名需要与我所知道的数据库相匹配。我正在使用MySQL,因此我在命名时使用所有小写和下划线,因为所有操作系统都不支持大小写,并且如果你试图强制它可以使MySQL行为怪异。问题是我使用了使用camelCase和PascalCase的标准C#命名约定。有没有办法将我的数据库中的命名映射到我在C#中的类而不使用实体模型设计器(.edmx文件),因为设计似乎有点儿麻烦。感谢。
答案 0 :(得分:1)
您可以使用将在类的第一个实例化时运行的可覆盖方法OnModelCreating
。你可以在那里覆盖单个表
public class Context : DbContext {
//your models
protected override void OnModelCreating(ModelBuilder modelBuilder) {
modelBuilder.Entity<SomeTable>()
.MapSingleType()
.ToTable("YourTableNameInDatabase");
}
}
就这么简单:)