Я работаю над веб-сайтом Asp.net mvc, где требование заключается в том, что пользователь должен иметь возможность изменять язык, а содержимое страницы должно быть переведено автоматически. Проблема: я использовал Custom Attribute в моей модели для отображения локализации, например: [CommonCustomAttributes.LocalizedDisplayName («Регистрация», «UserEmail»)].Изменение текущей локализации проекта MVC Asp.net
LocalizedIdsplayname реализуется как следующее: [AttributeUsageAttribute (AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Parameter, AllowMultiple = ложь)] общественного запечатанный класс LocalizedDisplayNameAttribute: DisplayNameAttribute { общественного LocalizedDisplayNameAttribute (строка resourceFileName, строка KEYNAME) : основание (GetMessageFromResource (resourceFileName, KEYNAME)) {}
private static string GetMessageFromResource(string resourceFileName, string keyName)
{
try
{
return CustomLocalizationUtility.GetKeyValue(HttpContext.Current, resourceFileName, keyName);
}
catch (Exception)
{
return "";
}
}
}
Так что, когда я переключаться между языками он не меняет .I означает DisplayName от модели WHe re используется как @ Html.LabelFor (m => m.UserEmailAddress, новый {@class = "col-md-3 control-label"}).
Но в .cshtml, где я использовал @placeholder = @ CustomLocalizationUtility.GetKeyValue ("Register", "EnterEmail"), который отлично работает при смене языка. Я что-то потерял Серьезно? Я использовал Cookie для настройки текущей культуры, и я также переопределил метод BeginExecuteCore в базовом контроллере. Я установил Cookie для текущей культуры из метода Action. Нужно ли добавлять дополнительный javascript для проверки JQuery Obstusive и изменения имени модели в зависимости от текущего изменения культуры?
Я изменил культуру при смене языка. Локализованный вызов в бритве отлично работает, но сообщения об отображении имени модели и проверки не изменяются, хотя культура была изменена. – Sumon154
. Вы должны проверить файл ресурсов для конкретного пользователя для UserEmailAddress – maztt
Если культура изменена, вы пройдете первый шаг. второй шаг - вы должны иметь все переводы в файле ресурсов – maztt