MVC 中的复杂 MapRoute

A complex MapRoute in MVC

我正在尝试学习 ASP.NET MVC,但我有一个问题找不到解决方案。我找到了一些关于它的著作,但不能完全理解它。

我的 Global.asax 文件中有很多 MapRoute,它们看起来都像下面这样:

routes.MapRoute(
       "Companies", // name it!
       "Bathroom/Companies/{Filtre}", // Route name
       new { controller = "Bathroom", action = "Companies", Filtre = UrlParameter.Optional } // Parameter defaults
);

并且此 MapRoute 处理 url,如 ~/Bathroom/Companies/FilterTest。但我需要一个 MapRoute 来处理 URL 之类的 ~/Bathroom/Companies/Location/Washington

我怎么写MapRoute

如果您希望 URL 完全以 /Bathroom/Companies/Location/ 开头,请使用此路径:

routes.MapRoute(
   "Companies",
   "Bathroom/Companies/Location/{Filtre}",
   new { controller = "Bathroom", action = "Companies", Filtre = UrlParameter.Optional }
);

这将匹配 /Bathroom/Companies/Location/Washington/Bathroom/Companies/Location/NewYork 等,您将在 Bathroom 控制器的 Companies 操作中获得 Filtre 参数。