Надеюсь, кто-нибудь может помочь с решением этой проблемы?
В настоящее время мой веб-сайт 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, но это просто для иллюстрации того, чего я пытаюсь достичь. Может ли кто-нибудь предоставить простое решение или ссылки на решения, которые они уже могут использовать?
Большое спасибо!