Я пытаюсь добавить поддержку разных языков в существующее приложение MVC 3. Пока мои ссылки были
oldUrl -> myapp.com/Item/Details/5/some-title
И есть ссылки на сайт из разных мест в сети. Но теперь я хочу изменить URL-адрес, чтобы включить язык:
newUrl -> kmyapp.com/en/Item/Details/5/some-title
Однако я хочу, чтобы ссылки oldUrl были действительными. И вопрос в том, как мне это сделать ... Самый простой способ - добавить еще один маршрут, но у меня их уже слишком много, и это становится некрасиво, и когда я создаю URL-адреса со страницы, которая не есть язык, ссылки также не имеют языка, поэтому мне нужно сделать что-то еще.
Другой способ - переопределить что-то, что стоит непосредственно перед тем, как MVC попытается сопоставить запрос с определенным маршрутом, но уже проанализировал URL-адрес запроса и заполнил словарь routeValues. Поэтому я могу просто проверить язык, и, если он не включен в параметры маршрута, я могу добавить его самостоятельно и вызвать реализацию родительского класса для продолжения.Это возможно? На что следует обратить внимание - UrlRoutingModule , MvcHttpHandler или что-то еще? Что я могу переопределить и как указать MVC использовать мою версию?
Мы также будем признательны за любые другие идеи!