Ладно, ребята, так что я застрял не менее 2 дней с поиском в Google и проверкой всех других статей стека, которые я смог найти.
Я просто хочу проверить, есть ли первый параметр в моемroute - это допустимое имя культуры, и если оно не изменяет URL / маршрут до выполнения, чтобы включить значение культуры.
Это так сложно ?!Я не думаю, что это должно быть.
Я мог бы просто изменить вещи в классе basecontroller, от которого наследуются все другие контроллеры, и проверить там, а затем изменить все данные маршрута и отправить их на своем пути.Проблема заключается в некоторых других пользовательских маршрутах, которые у меня есть.
Хорошо, вот проблема с моим кодом, и почему я думаю, что это будет проще всего выполнить перед выполнением любых контроллеров.
routes.MapRoute(
"Localization",
"{lang}/{controller}/{action}",
new { lang="en-US",controller="Home",action="Index"}
);
routes.MapRoute(
"Solutions",
"{lang}/Solutions/{controller}/{action}",
new { lang="en-US", controller = "WhatWeDo", action = "Index"}
);
routes.MapRoute(
"Default", // Route name
"{lang}/{controller}/{action}/{id}", // URL with parameters
new { lang = "en-US", controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
Итак, если я пытаюсь что-то изменить, я сталкиваюсь с этим неприятным / solutions / custom route для определенных решений, а для других ответов требуется настраиваемое перенаправление (выдача постоянно перемещенной ошибки) и проверка, чтобы определить, являются ли определенные параметрыноль.
Есть ли способ извлечь данные о маршруте и изменить мой маршрут / URL в файле global.asax?Там было бы проще всего, и я действительно хотел бы просто поставить его так, чтобы он всегда был там, и я мог просто нормально проложить маршрут.
Я, наверное, не очень разбираюсь, но я 'Я немного расстроен.Есть предложения?