当错字错误

时间:2018-01-30 16:46:43

标签: c# entity-framework ef-code-first ef-migrations

我有c#windows应用程序,代码优先,自动迁移类城市:

 class City
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }

我的应用程序上下文类是:

class AppDbContext : DbContext
    {
        public AppDbContext() : base("ConnectionString")
        {

        }

        protected override void OnModelCreating(DbModelBuilder builder)
        {
            Database.SetInitializer(new MigrateDatabaseToLatestVersion<AppDbContext, Configuration>());
        }

        public DbSet<City> Cityes { get; set; }
    }

当我运行我的应用程序时,数据库和表Cityes已成功创建,但存在一个要点:

我在Cityes类型中输入错误,但在数据库中,表名为Cities

Sql Management studio result

我认为实体框架会自动纠正拼写错误......这是真的吗?如果实体框架代码第一引擎这样做,我如何禁用该功能?

1 个答案:

答案 0 :(得分:1)

要禁用表格多元化,请在OnModelCreating覆盖中粘贴:

builder.Conventions.Remove<PluralizingTableNameConvention>();

这应该可以解决EF多重表名的问题。