1

我有一个这样的编辑操作:

[HttpPost]
public ActionResult Edit(UserModel user1)
{
    if (ModelState.IsValid)
    {
        UserManager um = new UserManager();
        String mail = User.Identity.Name;
        long id = um.getUserIDByemail(mail);
        user user = db.users.Single(u => u.user_id == id);
        user.name = user1.name;
        user.cellno = user1.cellno;
        db.users.Attach(user);
        db.ObjectStateManager.ChangeObjectState(user, EntityState.Modified);
        db.SaveChanges();
        return RedirectToAction("Index");
    }
    return View(user1);
}

我已经得到了我想要更新的用户对象。user 的两个属性 ( name, cellno) 来自一个视图。当我运行它时,我得到一个错误:

无法附加该对象,因为它已经在对象上下文中。一个对象只有在它处于未更改状态时才能重新附加。

4

1 回答 1

0

我认为您可以删除 Attach 并且它应该可以工作。

于 2012-04-28T22:23:29.353 回答