【发布时间】:2009-07-30 06:10:46
【问题描述】:
所以我正在关注 ScottGu 的 NerdDinner 教程,并且在解决这个错误时遇到了一些麻烦。我正在尝试实现 CRUD,所以起初,在编辑数据时,我从以下代码开始:
public ActionResult Edit(int id)
{
Dinner dinner = dinnerRepository.GetDinner(id);
return View(dinner);
}
正确显示编辑视图,并为我提供编辑数据的字段。现在,当我继续并且我的编辑操作变成这样时:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(int id, FormCollection formValues)
{
Dinner dinner = dinnerRepository.GetDinner(id);
UpdateModel(dinner);
dinnerRepository.Save();
return RedirectToAction("Details", new { id = dinner.DinnerID });
}
我返回 404 错误。显然找不到编辑视图。我很难理解为什么会这样。我什至试图复制确切的语法(我不喜欢这样做。)但没有运气。我错过了什么明显的东西吗?
编辑:我一添加这一行就发生了:
[AcceptVerbs(HttpVerbs.Post)]
也许会有帮助?
【问题讨论】:
-
404 发生在 GET 还是 POST 上?第一种方法用于 GET,第二种方法用于 POST。正如吹镖所说,我们不是在更改编辑方法,而是添加第二个。
标签: c# asp.net-mvc model-view-controller