【发布时间】:2022-01-10 09:27:38
【问题描述】:
我在默认路由上添加了控制器的自定义路由:
自定义:
routes.MapRoute(
name: "FaqSubCategory",
url: "{culture}/{controller}/{action}/{TapCode}",
defaults: new { controller = "FAQ", action = "GetChosenFaqSubCategory", TapCode = UrlParameter.Optional },
constraints: new { culture = new CultureConstraint() }
);
自定义 v2:
routes.MapRoute(
name: "FaqSubCategory",
url: "{culture}/{controller}/{action}/{TapCode}",
defaults: new { controller = "FAQ", action = "GetChosenFaqSubCategory", TapCode = UrlParameter.Optional },
constraints: new { culture = new CultureConstraint(), FAQ = new TranslateControllersConstraint("4189") }
);
默认值:
routes.MapRoute(
name: "DefaultWithCulture",
url: "{culture}/{controller}/{action}/{ID}",
defaults: new { controller = "Home", action = "Index", ID = UrlParameter.Optional },
constraints: new { culture = new CultureConstraint() }
);
基本上由于该自定义路由,主页正在接收“/home/index”,而其他一些页面在 URL 末尾接收“/index”
当我像第二个变体一样编写自定义路由时,除了常见问题控制器之外,一切都运行良好。
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-routing