【发布时间】:2022-11-26 04:25:24
【问题描述】:
public IActionResult Edit(int? id)
{
if (id == null || id == 0)
{
return NotFound();
}
var categoryFromDb = _db.Festivals.Find(id);
if (categoryFromDb == null)
{
return NotFound();
}
return View(categoryFromDb);
}
// POST
[HttpPost]
[ValidateAntiForgeryToken]
public IActionResult Edit(Festival obj)
{
if (obj.Naam == obj.Plaats)
{
ModelState.AddModelError("CustomError", "The DisplayOrder cannot exactly match the Name.");
}
if (ModelState.IsValid)
{
_db.Festivals.Update(obj);
_db.SaveChanges();
return RedirectToAction("Index");
}
return View(obj);
}
我尝试撤消我的工作,因为它以前工作过,之后我还向同一个数据库添加了第二次迁移,我不知道这是否是问题所在
【问题讨论】:
-
你能告诉我们
Festival类以及如何将你的Id属性(或FestivalId属性)设置为主键吗?否则,我看不出有什么异常。 -
public IActionResult Edit(Festival obj):obj.Id属性中是否有 0 或 null 以外的值? -
嗨@Bolts,如果您在没有主键的情况下传递 obj ,它将创建而不是更新,但是您说过它以前有效,对吗?你的第二次迁移是什么?与第一次迁移相比,您的变化是什么?
标签: c# asp.net-core-mvc