【发布时间】:2014-02-28 14:06:10
【问题描述】:
我的页面上有一个简单的表单。提交时,它会检查是否ModelState.IsValid,如果无效则返回具有相同模型的视图。
在同一页面上,我正在呈现一个包含另一个表单的操作,如下所示:
Html.RenderAction("AccountNote", new { id = Model.ID });
在我在页面上提交表单并且验证失败之前,一切正常。当它再次显示页面时,AccountNote 操作的 Post 事件会在我期望 Get 事件触发时触发。我想这是有道理的,因为它是渲染视图的操作的帖子,但我希望触发 Get 事件。
public ActionResult AccountNote(int id)
{
//code goes here...
return PartialView(model);
}
[HttpPost]
public ActionResult AccountNote(AccountNoteViewModel model)
{
//code goes here...
return PartialView(model);
}
我做错了吗?还是我必须做一些诡计才能完成这项工作?我希望 Html.RenderAction 始终假定 GET 而不是 POST。
【问题讨论】:
-
对 Post 使用不同的操作听起来是一种可行的方法,我将使用它,但我想保持开放,看看是否还有其他方法。
标签: asp.net-mvc-4 razor