1

使用 asp.net MVC 3,我在 Global.asax

    routes.MapRoute(
        "Default", // Route name
        "{controller}/{action}/{id}", // URL with parameters
        new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
    );

我希望路线来自 CustomRouteHandler。

public class CustomRouteHandler : IRouteHandler
{
    public IHttpHandler GetHttpHandler(RequestContext requestContext)
    {
        CustomHttpHandler handler = new CustomHttpHandler(requestContext);
        return handler;
    }
}

如何更改我的 routes.MapRoute 代码?

4

2 回答 2

1

利用:

routes.Add(new Route("CustomPath", new CustomRouteHandler()));

或者:

RouteTable.Routes.Add(new Route("CustomPath", new MvcRouteHandler()));
于 2013-05-23T09:46:29.943 回答
1

Routes.MapRoute实际上只是一种速记方法。如果您有无法使用快捷方式的自定义处理程序,则必须使用add- 方法:

Route specialroute= new Route("path", new CustomRouteHandler());
routes.Add("special", specialroute);
于 2013-05-23T09:47:36.837 回答