这是我的更新操作:更新操作麻烦
public void etat(string id)
{
Models.J2VEntities entity = new Models.J2VEntities();
Models.user model = (from p in entity.user
where p.iduser == id
select p).SingleOrDefault();
model.IsActive = !(model.IsActive);
entity.user.AddObject(model);
entity.ObjectStateManager.ChangeObjectState(model, System.Data.EntityState.Modified);
entity.SaveChanges();
RedirectToAction("Index", "Admin");
}
当我excutet我得到这个错误:
System.InvalidOperationException:具有相同键的对象已经存在于ObjectStateManager。现有对象处于Modified状态。如果在状态中添加对象,则可以将对象添加回ObjectStateManager。
在这一行:entity.user.AddObject(model);
此行'entity.Entry(模型).STATE = EntityState.Modified;'我这么想的工作强调了与红色。 – Chlebta 2012-04-12 23:27:33
@Chlebta - 该行的哪一部分加下划线?尝试右键单击红色,然后选择“解决 - >”选项,然后我猜你可能不得不包含一个命名空间 - 最有可能的是'使用System.Data;'。 – 2012-04-12 23:30:39
是的,我做了,但入口总是加下划线,当我继续下去时,他让我为它生成一个存根 – Chlebta 2012-04-12 23:33:11