1

我的访问控制器:

public ActionResult Index(Visits visits, int? id)
{
    ....
    return View(v);
}

这是我的路线配置

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

    routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Home", action = "Index", 
                        id = UrlParameter.Optional }
    );
}


Works: http://localhost:49225/Visits
Does not work: http://localhost:49225/Visits/123

自定义路由是什么(并强制它是一个整数)?

4

1 回答 1

1

您需要添加一条新路线才能使其正常工作。

目前,这将起作用:

/Visits/Index/123

我相信您需要添加以下内容:

routes.MapRoute(
    name: "VisitsDefault",
    url: "Visits/{id}",
    defaults: new { controller = "Visits", action = "Index", 
                    id = UrlParameter.Optional }
);

这是假设您已经有一个用于访问的模型绑定器。

于 2012-10-17T20:12:42.443 回答