如果我运行以下代码,我收到错误消息“在控制器上找不到公共操作方法'PostAction'... ”。 Fiddler显示使用GET请求而不是POST。我试图用Ajax.BeginForm替换Html.BeginForm,它没有帮助。那我该怎么办?感谢。
@using (Html.BeginForm())
{
@Ajax.ActionLink("ClickMe", "PostAction", new AjaxOptions { HttpMethod = "POST" })
}
[HttpPost]
public virtual ActionResult PostAction() { ... }
UPDATE,附加信息:这就是MVC生成Html锚点的方式:
<a onclick="Sys.Mvc.AsyncHyperlink.handleClick(this, new Sys.UI.DomEvent(event), { insertionMode: Sys.Mvc.InsertionMode.replace, httpMethod: 'POST' });" href="/.../PostAction/">ClickMe</a>
答案 0 :(得分:1)
哦,我只是忘了添加对MicrosoftAjax.js和MicrosoftMvcAjax.js的引用。当我添加它们时,一切正常。对不起愚蠢的帖子