2015-02-22 6 views
1

Я пытаюсь изучить ASP.NET MVC, и у меня есть вопрос, что я не могу найти решение. Я нашел несколько писем об этом, но не мог понять это отлично.Комплекс MapRoute в MVC

У меня есть много MapRoute в моем Global.asax файле, и все они выглядят как ниже:

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?

ответ

1

Если вы хотите 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 и т.д., и вы получите Filtre параметр в вашем Companies действия в Bathroom контроллера.

+0

позволяет сказать, что URL-адрес/Ванная/Компании/Расположение/Вашингтон и что я должен попасть в фильтр? –

+0

В этом случае 'Filtre' будет' Вашингтон' –

+0

, поэтому нет никакой разницы, если есть «Местоположение» или нет. Я не понимаю. Я хотел бы иметь другую функцию, которая возвращает ActionResult для «/ Bathroom/Companies/Location/Washington» –