这是我的编辑操作方法:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit([Bind(Include ="ID,Title,Issue,CreationDate,Status,Priority,UserID")] Ticket ticket)
{
if (ModelState.IsValid)
{
db.Entry(ticket).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
ViewBag.UserID = new SelectList(db.Users, "Id", "UserName", ticket.UserID);
return View(ticket);
}
每次System.Data.Entity.Infrastructure.DbUpdateException
都会发生db.SaveChanges()
。我的创建动作方法非常相似,但工作正常。
我的数据库中有另一个名为Updates的表,它有一个外键TicketID
将它链接到Ticket。每个故障单可以有多个更新。我认为这可能是造成这个问题的原因,但我不知道如何修复它,因为我对mvc很安静。
答案 0 :(得分:0)
您可以尝试为您的方法设置断点,然后检查此对象及其控制器编辑方法接收的参数。您可能无法将所有需要的参数从视图传递给控制器。先检查一下。