在我的View(.aspx)代码中,我可以向Html.BeginForm()提供哪些参数,以便将其提交回生成视图的同一控制器和操作?
答案 0 :(得分:4)
这一切都取决于您的路线表。假设您正在使用标准路由,我认为您不能提供任何参数(或空值),并且您将最终处于生成视图的同一控制器操作。
否则,您可以从路径数据中提取当前控制器和操作。
答案 1 :(得分:1)
使用ViewContext,您可以获取名为
的路径数据<% using (Html.BeginForm(ViewContext.RouteData.Values["controller"].ToString(), ViewContext.RouteData.Values["action"].ToString(), FormMethod.Post)) {%>
your form data here
<% } %>
答案 2 :(得分:0)
在你看来
<% using (Html.BeginForm("actionName", "controllerName", new { }, FormMethod.Post, "")){ %>
<%} %>
如果你没有使用html助手
<form id='form' action="../controllerName/actionName" method="post">
在您的控制器中
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult actionName (FormCollection collection)
{}