草上飞 发表于 2013-1-3 17:30:04

MVC3路由配置问题

<div id="cnblogs_post_body">    在MVC3路由配置过程中发现一个问题,路由名称不能相同且在一个路由名称中不能包含另一个路由的名称,否则另一个路由配置会失效。如下路由配置
routes.MapRoute(
         "ProductList", // Route name
         "ProductList/{id}.html", // URL with parameters
         new { controller = "List", action = "ProductList", id = UrlParameter.Optional } // Parameter defaults
       );
   routes.MapRoute(
             "Product", // Route name
             "Product/{id}.html", // URL with parameters
             new { controller = "Product", action = "Product", id = UrlParameter.Optional } // Parameter defaults
         );
第一个路由名称“ProductList”已经包含了第二个路由的名称“Product”,运行程序后,第二个路由并没有生成Product/XXXX.html这样的URL,把第二个路由名称改成 "Products"就可以生成正常的URL,Product/XXXX.html这样的了。
页: [1]
查看完整版本: MVC3路由配置问题