asp.net mvc プロジェクトで次のルートが定義されています
//Products/Category/SubCategory/Page
routes.MapRoute(
"ProductCategoryTypePaging",
"Products/{Category}/{subCategory}/Page{page}",
new { controller = "Products", action = "Index" }, new { page = @"\d+" }
);
//Products/Category/Page
routes.MapRoute(
"ProductCategoryPaging",
"Products/{Category}/Page{page}",
new { controller = "Products", action = "Index" }, new { page = @"\d+" }
);
//Products/Category/SubCategory
routes.MapRoute(
"ProductCategoryType",
"Products/{Category}/{subCategory}",
new { controller = "Products", action = "Index", page = 1 }
);
//Products/Category
routes.MapRoute(
"ProductCategory",
"Products/{Category}",
new { controller = "Products", action = "Index" }
);
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
これらは正常に動作しているように見えますが、製品の詳細を表示しようとすると、機能しなくなります。詳細を表示するには、URL は次のようになります。
/製品/詳細/18
Products/Category/SubCategory ルートで一致するランニング
これを機能させるには、どうすればよいですか?