Надеюсь, кто-нибудь сможет помочь с решением этой проблемы?
В настоящее время мой веб-сайт ASP.Net MVC использует проверку подлинности с помощью форм и настроен следующим образом: my web.config:
<authentication mode="Forms">
<forms loginUrl="en/User/Signin" timeout="2880" />
</authentication>
У нас есть некоторые правила маршрутизации, которые используют префикс / en / в URL-адресе в качестве идентификатора языка, но проблема в том, что если кто-то посещает наш французский сайт www.web.com/fr/Secure/privateData, они перенаправляются на www.web.com/en/User/Signin, что, в свою очередь, устанавливает культуру на английском языке. Поэтому после входа в систему пользователям может потребоваться изменить язык обратно на французский.
Фигово!
Итак, если веб-сайту нужно поддерживать больше языков, мне нужно сделать что-то вроде этого в веб-конфигурации:
<authentication mode="Forms">
<%if (isGerman()) { %>
<forms loginUrl="de/User/Signin" timeout="2880" />
<%} else if (isFrench()) {%>
<forms loginUrl="fr/User/Signin" timeout="2880" />
<%} else { %>
<forms loginUrl="en/User/Signin" timeout="2880" />
<% } %>
</authentication>
Я знаю, что у вас не может быть кода в web.config, но это просто для иллюстрации того, чего я пытаюсь достичь. Может ли кто-нибудь предоставить простое решение или ссылки на решения, которые они, возможно, уже используют?
Большое спасибо!