Установить культуру в приложении ASP.Net MVC

Как лучше всего установить Культуру / Культуру пользовательского интерфейса в приложении ASP.net MVC

В настоящее время у меня есть класс CultureController, который выглядит следующим образом:

public class CultureController : Controller
{
    public ActionResult SetSpanishCulture()
    {
        HttpContext.Session["culture"] = "es-ES";
        return RedirectToAction("Index", "Home");
    }

    public ActionResult SetFrenchCulture()
    {
        HttpContext.Session["culture"] = "fr-FR";
        return RedirectToAction("Index", "Home");
    }
}

и гиперссылка для каждого языка на главной странице с такой ссылкой:



который работает нормально, но я думаю, что есть более подходящий способ сделать это.

Я читаю Культуру, используя следующий ActionFilterhttp://www.iansuttle.com/blog/post/ASPNET-MVC-Action-Filter-for-Localized-Sites.aspx, Я немного новичок MVC, поэтому не уверен, что я устанавливаю это в правильном месте. Я нене хочу делать это на уровне web.config, он должен быть основан на пользователяхС выбором. Я тоже неЯ не хочу проверять их http-заголовки, чтобы узнать культуру настроек браузера.

Редактировать:

Просто чтобы быть ясно - я не пытаюсь решить, использовать ли сеанс или нет. Я доволен этим. Я пытаюсь понять, лучше ли это делать в контроллере Культуры, в котором есть метод действия для каждой Культуры, который нужно установить, или в MVC-конвейере есть лучшее место для этого?

Ответы на вопрос(8)

Ваш ответ на вопрос