我的区域中的控制器称为Admin
为什么Html.BeginForm会生成空行为?
public class SiteVisitController : Controller
{
public ViewResult ReadyForCompletion() { ... }
public ViewResult CompleteAndExport() { ... }
}
并且具有回发到在同一类中的不同控制器操作的图(ReadyForCompletion.cshtml
)
@using (Html.BeginForm("CompleteAndExport", "SiteVisit"))
{
<input type="submit" value="Complete & Export" />
}
这种形式生成的HTML有一个空白的动作:
<form action="" method="post"> <input type="submit" value="Complete & Export" />
</form>
我想知道为什么这有ab行动?对于更多的信息,我还添加在
@Url.RouteUrl(new { controller = "ReadyForCompletion", action = "SiteVisit", area = "Admin" })
其也打印出来一个空字符串。另外,如果我使用空的Html.BeginForm()
它会生成正确的操作。
注册的路线是
context.MapRoute(
"Admin_manyParams",
"Admin/{controller}/{action}/{id}/{actionId}",
new { action = "Index", id = UrlParameter.Optional, actionId = UrlParameter.Optional }
);
你能显示注册路线吗? – 2011-06-16 00:13:34
我添加了注册的路线,但我很困惑,为什么这很重要,因为我可以成功地做'Html.BeginForm()' – kelloti 2011-06-16 00:35:26