我有一个控制台应用程序首先使用代码实体框架4.3.1。我创建了一个类,一个DbContext,一个DbSet,我有一个数据库连接。
问题是我拼错了表名,程序引发了错误。我更改了DbSet中的名称,系统不断抛出具有旧名称的相同错误。
示例:
public DbSet<SHIPPER> SHIPPERs { get; set; }
在SQL Server中找不到SHIPPERs表。没问题。我把它改成了
public DbSet<SHIPPER> SHIPPER { get; set; }
我得到无效的对象名称'dbo.SHIPPERs'。“
我在Visual Studio中搜索了SHIPPERs并且没有返回任何内容。我错过了什么?
注意:我为另一个表创建了另一个DbSet,并且可以正常工作。
答案 0 :(得分:0)
问题在于多元化。在DbContext类中添加以下代码以解决问题:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}