(免責事項: MVC の新機能)
ユーザーが productfolder/productname と productfolder/category/productname の両方でページを要求できるようにするカテゴリを使用して、Web サイトの製品リストをセットアップしようとしています。それは可能ですか?
一番近いのは、RouteConfig.cs RegisterRoutes メソッドに次のコードを追加し、ProductNameOne.cshtml を Views\Products ソリューション フォルダーに配置したことです。これにより、'.../Products/Index' および '.../Products/ProductNameOne' ページは表示されますが、'.../Products/CategoryOne/ProductNameOne' は 404 を返します。
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(name: "Products", url: "Products/{action}/{id}",
defaults: new { controller = "Products", action = "Index", id =
UrlParameter.Optional });
routes.MapRoute(name: "CategoryOneProducts", url: "Products/CategoryOne/{action}/{id}",
defaults: new { controller = "Products", action = "ProductNameOne", id =
UrlParameter.Optional });
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional });