如何使用Html.BeginForm设置FormMethod.Get

时间:2010-02-09 12:25:03

标签: asp.net-mvc

我想让我的表单执行Get而不是Post(这是用户提交的查询字段)

我知道我可以用

来做
<% using(Html.BeginForm(action, controller, FormMethod.Get) {%>

但是,我宁愿不必指定操作/控制器,并且似乎没有仅仅使用FormMethod的重载。

这是MVC 1.0(没有期货)

2 个答案:

答案 0 :(得分:7)

框架中没有这样的过载。但是,如果您将操作和控制器作为null发送,则框架将执行您想要的操作。如果您不喜欢,可以自己创建该扩展程序:

public static MvcForm BeginForm(this HtmlHelper htmlHelper, FormMethod method) {
    return htmlHelper.BeginForm(null, null, method);
}

答案 1 :(得分:2)

您可以使用<form method="get" action="<%= Url.Action("Action", "Controller")%>" >