HttpPost是否有@ Html.ActionLink等价物?

时间:2012-11-05 20:35:11

标签: asp.net-mvc-3 razor

我有一个表,我需要添加链接。链接需要转到我的控制器上的HTTPPost actionResult。我有一个巨大的列表,用户需要被允许点击状态,点击控制器并随后路由到相应的页面。 @ Html.ActionLink是一个HttpGet动作。是否有相同的帖子?

  <table class="table table-striped table-bordered">
        <th>Ssn</th>
        <th>State</th>
        <th>File Uploaded Date</th>
        <th>Claim Status</th>
        @foreach (var currentClaim in Model.CurrentClaims)
        {
        <tr >
            <td><span name="Ssn">@currentClaim.SSN</span></td>
            <td>@currentClaim.StateName</td>
            <td>@currentClaim.ClaimDate</td>
            <td>@Html.ActionLink(@currentClaim.ClaimStatus, "SubmitClaim", "Claim", FormMethod.Post, new ClaimInputModel { SSN = currentClaim.SSN, StateId = currentClaim.StateId })</td>

         </tr>
        }

    </table> 

我尝试使用

 @using("SubmitClaim", "Claim", FormMethod.Post, new ClaimInputModel { SSN = currentClaim.SSN, StateId = currentClaim.StateId })
 {
      <button type="submit" >xxx</button>
 }

我得到了一个HttpCompiler错误。

1 个答案:

答案 0 :(得分:1)

您需要使用返回BeginForm() MvcForm的{​​{1}} HtmlHelper来实现IDisposable ...

@using(Html.BeginForm("SubmitClaim", "Claim", FormMethod.Post, new { SSN = currentClaim.SSN, StateId = currentClaim.StateId }))
{
     <button type="submit" >xxx</button>
}