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);
}

更新したいユーザーオブジェクトがあります。ユーザーの2つのプロパティ(namecellno)はビューから取得されます。実行すると、エラーが発生します。

オブジェクトはすでにオブジェクトコンテキストにあるため、アタッチできません。オブジェクトは、変更されていない状態の場合にのみ再アタッチできます。

4

1 に答える 1

0

アタッチを削除するだけで機能すると思います。

于 2012-04-28T22:23:29.353 に答える