小编the*_*cko的帖子

使用Html.BeginForm的ASP.Net MVC路由问题

使用MVC,我在视图中有一个html表单助手:

using (Html.BeginForm("ActionOne", "ControllerOne")) ...
Run Code Online (Sandbox Code Playgroud)

使用默认路由,action属性的输出符合预期:

<form action="/ControllerOne/ActionOne" ...
Run Code Online (Sandbox Code Playgroud)

但注册一条似乎没有匹配的新路线会影响输出.

路由代码:

public static void RegisterRoutes(RouteCollection routes)
{
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

    routes.Add("testRoute", new Route("MyUrl", new MvcRouteHandler()));

    routes.MapRoute("Default", "{controller}/{action}", new { controller = "Home", action = "Index"});
}
Run Code Online (Sandbox Code Playgroud)

输出:

<form action="/MyUrl?action=ActionOne&amp;controller=ControllerOne"
Run Code Online (Sandbox Code Playgroud)

这是设计还是我在做一些基本的东西?

干杯!

asp.net-mvc routing html.beginform

3
推荐指数
1
解决办法
8072
查看次数

标签 统计

asp.net-mvc ×1

html.beginform ×1

routing ×1