我在实体框架中出现以下错误,无法为我的生活弄清楚是什么导致它。实体框架4.1无效的对象名称
无效的对象名称dbo.User“
在数据库中的实际的表名称叫做用户和右击并选择“更新模型从数据库”我身边有其他六位我把它添加到我的实体模型我的项目中的模型都连接到具有多个表名称的相同数据库,并且以完全相同的方式更新,没有任何问题。由于某种原因,EF在尝试执行更新时从我的表名中删除了's'。正如您从我的代码中可以看到的那样,我会在更新之前执行一个选择,而不会出现问题。
我也尝试删除该实体并重新创建它,取消选中'多重化或单数生成的对象名称'。但问题依然存在。
任何想法,将不胜感激这一个。
public void Update(User updatedUser)
{
using (var context = CreateUserContext())
{
var entity = context.UserEntities
.Where(u => u.UserId == updatedUser.UserId)
.SingleOrDefault();
if (entity != null)
{
entity.Name = updatedUser.Name;
entity.Description = updatedUser.Description;
entity.LastModifiedById = updatedUser.LastModifiedById;
entity.IsDeleted = updatedUser.IsDeleted;
context.UserEntities.ApplyCurrentValues(entity);
context.SaveChanges();
}
}
}
非常感谢。我使用了SQL Profiler,并且所有更新都看起来不错。然后我可以看到下一个动作,忘记了我在表格上触发了更新最后一次修改时间,derrr !!。再次感谢。 – Cragly
@很高兴我能够提供帮助,而且我知道可以很容易地忽略触发器中的代码,特别是当您专注于应用程序的不同部分时。 –