【发布时间】:2012-10-04 10:58:38
【问题描述】:
我正在使用 EF CF 开发一个多层应用程序。我设法以这种方式删除了一个分离的实体:
public void Delete(DbSet MySet, object Obj)
{
MySet.Attach(Obj);
var Entry = this.Entry(Obj);
Entry.State = EntityState.Deleted;
this.SaveChanges();
}
这个方法被定义在一个名为Adapter:DbContext的类中。 问题是,更新时,类似的代码不起作用:
public void Update(DbSet MySet, object Obj)
{
MySet.Attach(Obj);
var Entry = this.Entry(Obj);
Entry.State = EntityState.Modified;
this.SaveChanges();
}
这不会更新数据库也不会抛出任何异常 我应该如何更新分离的实体?
【问题讨论】:
-
我认为:Entry.CurrentValues.SetValues(Obj);是多余的(您正在设置您的 Obj 实体以匹配您的 Obj 实体) - 但是它看起来应该可以工作。什么不工作?是否抛出异常?
-
更糟糕...它什么也没做>.
标签: entity-framework ef-code-first updating