如何让MVC ActionLink调用POST方法?

时间:2017-05-14 17:20:17

标签: asp.net-mvc actionlink

我有一个完美的HTML.ActionLink,除了没有点击POST方法。

@Html.ActionLink("Join Now!", "JoinFleet", "Members", new { ID =Model.ID , fleet = 1 }, new { @class = "btn btn-primary" })

以预期的结果显示以下网址。

http://localhost:64096/Members/JoinFleet/2403?fleet=1

我需要它完全像这样工作,但是,点击我的POST JoinFleet方法。

我玩弄了几种可以完成这项任务的方法。我还试图将已检查的radiobutton的值传递给使用作为参数。

@using (Html.BeginForm("JoinFleet", "Members", new { fleet = 3 },
FormMethod.Post, new { @class = "form-group" }))

然后使用标准提交按钮提交 我会很高兴让Action在我的控制器中点击我的post方法,或者将单选按钮的值作为我使用中的fleet的param值传递。

1 个答案:

答案 0 :(得分:0)

在ASP.NET MVC中创建指向控制器操作的链接时,最好使用通用的ActionLink方法,因为它允许重构友好的强类型链接。

默认值:ActionLink

@Html.ActionLink("Delete", "Delete", new { id = item.ID })

使用按钮:

<input type="button" title="Delete" value="D" onclick="location.href='@Url.Action("Delete", "movies", new { id = item.ID })'" />

使用图片:

<a href="@Url.Action("Delete", "movies", new { id = item.ID })" title="Edit">
<img src="../../Content/Images/Delete.png" />
</a>