Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何创建将页面称为HttpGet的按钮_.net_Asp.net Mvc_Asp.net Mvc 3_Razor - Fatal编程技术网

.net 如何创建将页面称为HttpGet的按钮

.net 如何创建将页面称为HttpGet的按钮,.net,asp.net-mvc,asp.net-mvc-3,razor,.net,Asp.net Mvc,Asp.net Mvc 3,Razor,我正在学习MVC和ASP.NET。我有一个表,其中最后一列包含每行的编辑按钮。这很好,我喜欢按钮和链接的外观,但是当它打开页面时,HttpPost操作在控制器中被调用。我理解为什么会发生这种情况,这是一个提交按钮,它的行为就像是页面正在提交。我如何修改它,以便有一个按钮重定向到该页面的HttpGet?(用剃刀…) @使用(Html.BeginForm(“更新”、“购买”)) { @Html.HiddenFor(x=>x.Id) } 添加FormMethod。获取到BeginForm()参数。您可

我正在学习MVC和ASP.NET。我有一个表,其中最后一列包含每行的编辑按钮。这很好,我喜欢按钮和链接的外观,但是当它打开页面时,HttpPost操作在控制器中被调用。我理解为什么会发生这种情况,这是一个提交按钮,它的行为就像是页面正在提交。我如何修改它,以便有一个按钮重定向到该页面的HttpGet?(用剃刀…)

@使用(Html.BeginForm(“更新”、“购买”))
{
@Html.HiddenFor(x=>x.Id)
}

添加
FormMethod。获取
BeginForm()
参数。

您可能需要一个,因为您需要保存发布的数据

在post操作中,您将重定向到GET操作(该操作可以是具有更新信息的同一页面)。这样,后续刷新(F5)将不会重新提交帖子。这是一个很好的模式使用

@using (Html.BeginForm("Update", "Purchase"))
{
    @Html.HiddenFor(x => x.Id)
    <input type="submit" value="Update" />
}