鉴于定义了以下两条路线:
routes.MapRoute(name: "StateResultsCategory", url: "{state}/{category}/{searchTerm}", defaults: new { controller = "Results", action = "SearchStateCategory" });
routes.MapRoute(name: "FRStateResults", url: "fr/{state}/{searchTerm}", defaults: new { controller = "Results", action = "SearchStateFR" });
第一条路线是捕获“fr”并将其传递给“fr”的错误动作。
我不想在第一条路线上设置约束,因为我可能稍后会有其他语言特定的路线。即
routes.MapRoute(name: "CHStateResults", url: "ch/{state}/{searchTerm}", defaults: new { controller = "Results", action = "SearchStateCH" });
routes.MapRoute(name: "SPStateResults", url: "sp/{state}/{searchTerm}", defaults: new { controller = "Results", action = "SearchStateSP" });
如何设置路线以适应这种情况?
感谢。
答案 0 :(得分:0)
您放置路线的顺序会有所不同。
将更具体的路线放置在更通用的路线之上,可确保它们不会陷入更通用的版本。