したがって、行の編集ページで主キーフィールドを編集できるようにする必要があります。エラーが発生します。
ストアの更新、挿入、または削除ステートメントが予期しない行数(0)に影響しました。エンティティがロードされてから、エンティティが変更または削除された可能性があります。ObjectStateManagerエントリを更新します。
主キーフィールドを変更しない場合、他のすべての変更をデータベースに保存できます。
これが私の編集機能です。
//edit - post
[HttpPost]
public ActionResult ActiveCampaignsEdit(ActiveCampaign activecampaign)
{
try
{
if (ModelState.IsValid)
{
db.Entry(activecampaign).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("ActiveCampaigns");
}
}
catch (DataException err)
{
//Log the error (add a variable name after DataException)
ModelState.AddModelError(string.Empty, err.Message);
}
ViewBag.TypesList = new SelectList(db.Types, "TypeId", "TypeName");
ViewBag.CaptureFormsList = new SelectList(db.CaptureForms, "Id", "Name");
ViewBag.AssignedUsersList = new SelectList(db.Users, "Id", "Username");
return View(activecampaign);
}
主キーを編集するにはどうすればよいですか、それとも間違った方法でこれにアプローチしていますか?