C# 有没有办法强制所有属性名称映射首先使用EF 4.3代码中的所有大写字母?

C# 有没有办法强制所有属性名称映射首先使用EF 4.3代码中的所有大写字母?,c#,oracle,ef-code-first,entity-framework-4.3,C#,Oracle,Ef Code First,Entity Framework 4.3,我首先在Oracle数据库中使用EF4.3代码。数据库的一个奇怪之处是,它会自动将表名和列名都设置为大写。我的域属性在PascalCase中。不幸的是,EF不知道列名的大写,所以我的查询不起作用。我在几个类上有数百个属性,这些属性应该映射到oracle列。我真的不想手动编写所有这些映射。有没有办法使用约定来大写列名 摘要: 我需要实体框架对所有列名使用所有大写字母。我该怎么做呢?我还没有试过这个,但是像这样的东西呢: public class SomeEntities : DbContext {

我首先在Oracle数据库中使用EF4.3代码。数据库的一个奇怪之处是,它会自动将表名和列名都设置为大写。我的域属性在PascalCase中。不幸的是,EF不知道列名的大写,所以我的查询不起作用。我在几个类上有数百个属性,这些属性应该映射到oracle列。我真的不想手动编写所有这些映射。有没有办法使用约定来大写列名

摘要:


我需要实体框架对所有列名使用所有大写字母。我该怎么做呢?

我还没有试过这个,但是像这样的东西呢:

public class SomeEntities : DbContext
{
    public DbSet<Entity> Entities { get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        // Configure Code First to ignore ColumnTypeCasing convention
        modelBuilder.Conventions.Remove<ColumnTypeCasingConvention>();
    }
}
公共类SomeEntities:DbContext
{
公共数据库集实体{get;set;}
模型创建时受保护的覆盖无效(DbModelBuilder modelBuilder)
{
//首先配置代码以忽略ColumnTypeCasing约定
modelBuilder.Conventions.Remove();
}
}

噢,我多么希望这些约定不仅可以删除,而且可以像(Fluent)NHibernate一样进行编辑。他们目前正计划添加它(),但请去投票支持它,这样他们可能就不会(再次)决定剪切它了。
ColumnTypeCasingConvention
在哪里?当我包含
System.Data.Entity.ModelConfiguration.Conventions
时,它仍然无法解析引用。此解决方案在EF版本5之前有效。在版本6上它变得过时了。ColumnTypeCasingConvention的名称空间是什么@RogersonNazário他们更换了吗?