Код: Выделить всё
var cultureProvider = new CookieRequestCultureProvider();
cultureProvider.CookieName = "MyCultureCookie";
var localizationOptions = new RequestLocalizationOptions
{
DefaultRequestCulture = new RequestCulture("de"),
SupportedCultures = StaticData.SupportedCultures,
SupportedUICultures = StaticData.SupportedCultures,
RequestCultureProviders = new List
{
cultureProvider,
new AcceptLanguageHeaderRequestCultureProvider()
}
};
app.UseRequestLocalization(localizationOptions);
Код: Выделить всё
services.AddLocalization(options => options.ResourcesPath = "Resources");
services.AddControllersWithViews()
.AddDataAnnotationsLocalization(options =>
{
options.DataAnnotationLocalizerProvider = (type, factory) =>
factory.Create(typeof(MyLocalizationDll));
})
.AddViewLocalization()
.AddRazorRuntimeCompilation();
services.AddMvc()
.SetupModelBindingLocalization(services)
.AddViewLocalization();
Код: Выделить всё
Но проблема в том, что когда у меня есть десятичное число, например 1,5 в немецкой культуре, и я отправляю форму, то в моей контроллер. Только когда я переключаю язык на «en», я получаю правильное число, потому что десятичный разделитель, как и ожидалось, представляет собой точку. И я также получаю некоторые сообщения проверки этого поля на другом языке. Никак не могу понять в чем тут проблема...
Подробнее здесь: https://stackoverflow.com/questions/640 ... ng-culture
Мобильная версия