我正在学习MVC和ASP.NET。我有一个表,其中最后一列包含每行的编辑按钮。这很好用,我喜欢按钮与链接的外观和感觉,但是当它打开页面时,在控制器中调用HttpPost动作。我理解为什么会发生这种情况,它是一个提交按钮,并且它正在提交该页面。如何修改这个以便我有一个按钮重定向到该页面的HttpGet? (在剃刀......)
@using (Html.BeginForm("Update", "Purchase"))
{
@Html.HiddenFor(x => x.Id)
<input type="submit" value="Update" />
}
答案 0 :(得分:1)
将FormMethod.Get
添加到BeginForm()
参数。
答案 1 :(得分:1)
您可能需要Post-Redirect-Get,因为您需要保存已发布的数据。
在后期操作中,您将重定向到GET操作(可能是包含更新信息的同一页面)。这样,后续刷新(F5)将不会重新提交POST。这是一个很好用的模式。