Как заставить работать URL-адрес, если имя контроллера или действия и URL-адрес не могут совпадать? - PullRequest
2 голосов
/ 01 мая 2011

Если URL-адрес http://example.com/apple-orange, контроллер или действие должно называться AppleOrange , поскольку по соглашению имя контроллера или действия является функцией C # или VB; так что не может быть тире, верно?

Поэтому я должен добавить маршрут поверх стандартных по умолчанию:

routes.MapRoute("AO","apple-orange", new { controller = "Home", action = "AppleOrange", id = UrlParameter.Optional });

Теперь, исходя из этого, мне нужно иметь отображение маршрута для каждого URL, имя которого имеет тире, или по какой-то причине не может быть той же строкой, что и имя контроллера или действия.

Это правда? Есть ли другой способ сделать это без отдельного сопоставления для каждого из этих URL-адресов?

1 Ответ

1 голос
/ 01 мая 2011

Вы можете попробовать использовать атрибут ActionName :

[ActionName("apple-orange")]
public ActionResult AppleOrange()
{
    ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...