Ошибка локализации аннотации при переводе - PullRequest
0 голосов
/ 31 мая 2018

Я работаю на веб-сайте ASP.NET Core MVC, Локализация хорошо работает в Controller и View, но у меня ошибка с локализацией DataAnnotation:

Мой язык по умолчанию, если английский и у меня есть имя файланапример: "Index.fr.resx".
Если требуется traduction на французском языке, используется traduction, иначе возвращается строковый ключ (ключ на английском языке), но для DataAnnotation traduction работает хорошо, но когда английский языкТребуется, веб-сайт отображает ошибку:

Could not find any resources appropriate for the specified culture or the neutral culture. Make sure "Intranet.Resources.ViewModels.News.Add.resources" was correctly embedded or linked into assembly

Но файл найден потому, что работает traduction, и для локализации Controller или View, если требуется английский, возвращается ключевая строкаи работать хорошо, есть идеи?

Add.fr.resx:

Title => Titre

Add.cs

[Display(Name = nameof(Resources.ViewModels.News.Add.Title), ResourceType = typeof(Resources.ViewModels.News.Add))]
        public String Title { get; set; }

Startup.cs

services.AddMvc(
                config =>
                {
                    config.Filters.Add<ActionFilter>();
                })
                .AddViewLocalization(options => options.ResourcesPath = "Resources")
                .AddDataAnnotationsLocalization();

1 Ответ

0 голосов
/ 01 июня 2018

Кажется, что невозможно сделать локализацию атрибута отображения в модели, поэтому я просто сделал это в виде:

placeholder="@Localizer[Html.DisplayNameFor(x => x.Title)]"
...