В приложении ASP.NET MVC хранятся следующие файлы ресурсов, в которых хранится сообщение об ошибке проверки формы для английского и испанского языков
ErrorMessages.resx
- сообщения об ошибках на английском языке
ErrorMessages.sp.resx
- Испанские сообщения об ошибках
В моих моделях, которым требуются System.ComponentModel.DataAnnotations
Обязательные атрибуты, они помечены так:
[Required(ErrorMessageResourceType = typeof(ErrorMessages), ErrorMessageResourceName)]
public string MyProperty { get; set; }
В моем контроллере я читаю файл cookie JavaScript, который содержит выбранный пользователем язык на сайте и программно задает «CultureInfo» текущего потока и сеанс HTTP:
public ActionResult MyController()
{
var language = HttpContext.Request.Cookies["language"].Value;
if(language.Equals("english"))
{
HttpContext.Session["culture"] = "en-US";
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
}
else
{
HttpContext.Session["culture"] = "es-US";
Thread.CurrentThread.CurrentCulture = new CultureInfo("es-US");
}
}
Как установить соответствующий файл ресурса после изменения значения CultureInfo?