Можем ли мы использовать только имя контроллера и параметр id в URL для приложения Asp.net MVC - PullRequest
1 голос
/ 07 января 2012

Предположим, у меня есть контроллер с именем категория с методом действия, Index , который принимает id в качестве параметра.

Таким образом, URL выглядит следующим образом: category / Index / foo . Как видите, сегмент индекса просто не выглядит правильным. URL-адрес, такой как: category / foo , будет более читабельным и понятным.

Как и в SO, эти парни используют: question / 857344

Как мне получить такой URL? В моих маршрутах я установил значения по умолчанию для всех трех: контроллер, действие и идентификатор. Но когда я пытаюсь посетить category / foo , я получаю «404 - ресурс не найден»

1 Ответ

3 голосов
/ 07 января 2012
routes.MapRoute(
               "Category/{id}",
               new { controller = "Category", action = "Index", id = UrlParameter.Optional } // Parameter defaults
               );

Вы отображаете его так, как вы хотите, чтобы он выглядел, затем указываете действие.

Также убедитесь, что вы поставили его перед маршрутом по умолчанию

...