Мы пытаемся реализовать локализацию для наших моделей доменов, которые существуют в отдельном проекте библиотеки классов в нашем решении. Однако мы не можем заставить его работать, поскольку атрибуты аннотаций данных моделей не переводятся вообще.Локализация аннотаций данных в отдельной библиотеке классов
Структура проекта
- Решение
- Веб-проект
- папка ресурсов (содержит .resx файлы. App.en.resx Ex.) Работает отлично
- библиотека классов
- модели домена
- папка ресурсов (содержит .resx файлы. Ex. App.en.resx) Не работает
- Веб-проект
Startup.cs
services.AddMvc()
.AddViewLocalization(LanguageViewLocationExpanderFormat.Suffix)
.AddDataAnnotationsLocalization();
Примечание
Локализация работает в веб-проекта, например, он переводит представления, контроллеры. Однако это не сработает, когда мы пытаемся перевести модели, которые существуют в отдельном проекте.
// Считает
Не могли бы вы отредактировать свой вопрос и указать пример того, как вы пытаетесь использовать ресурс внутри вашей библиотеки классов? Я пытаюсь что-то вроде '[EmailAddress (ErrorMessageResourceName =" Validation_EmailInvalid ", ErrorMessageResourceType = typeof (MyResources))], но ** MyResources **, похоже, не существует внутри библиотеки классов, тогда как в веб-приложении. Похоже, код для использования этих строго типизированных классов, представляющих файлы ресурсов, генерируется автоматически при использовании веб-приложения. Может быть, поэтому в вашем случае это вообще не работает (это выстрел). – Alisson