NET MVC RegisterRoutes规则

时间:2016-08-09 15:31:48

标签: asp.net-mvc

        routes.MapRoute(
         "Default",
          "{controller}/{action}/{id}",
         new { controller = "Home", action = "Index", id = UrlParameter.Optional },
         new string[] { "Teng.Web.Controllers" });


        routes.MapRoute(
            "CMSArticle",
             "{Classify}/{controller}/{action}/{id}",
            new { Classify = @"", controller = "Home", action = "Index", id = UrlParameter.Optional },
            new string[] { "Teng.Web.Controllers" });

匹配CMSArticle http://localhost:4848/ss/home/index/5

我想要http://localhost:4848/ss/home/index 去CMSArticle路线

2 个答案:

答案 0 :(得分:1)

home和ss似乎都是控制器名称。你必须去默认路线。但在此之前请检查您的网址。

答案 1 :(得分:0)

是否将实际参数分类?我认为他们需要按重要性排序。如果路线与一条路线不匹配则下降到下一路线。试试下面的内容。

routes.MapRoute(
                "CMSArticle",
                 "ss/{controller}/{action}/{id}",
                new { controller = "Home", action = "Index", id = UrlParameter.Optional },
                new string[] { "Teng.Web.Controllers" });

routes.MapRoute(
             "Default",
              "{controller}/{action}/{id}",
             new { controller = "Home", action = "Index", id = UrlParameter.Optional },
             new string[] { "Teng.Web.Controllers" });

您还可以在路线中设置特定的控制器/操作,使其不适用于所有控制器和/或操作。