Как показать Edition DisplayName на нескольких языках - PullRequest
0 голосов
/ 26 июня 2018

Является ли версия DisplayName локализуемой? Если нет, что является лучшим в коде, чтобы сделать его локализуемым?

Я хочу иметь возможность изменять DisplayName издания без повторного развертывания приложения на нескольких языках.

Я использую версию ASP.Net Core / Angular - ASP.Net Zero.

1 Ответ

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

Вы можете сопоставить свой ILocalizableString с string, Automapper преобразует его. Вы можете создать свою Локализуемую строку следующим образом:

new LocalizableString(edition.Name, "localizationFileName");

Если вы хотите лучше понять, что делает autopper, вы можете найти его в AbpAutoMapperModule.cs, метод CreateCoreMappings.

РЕДАКТИРОВАТЬ : Может быть, вы можете настроить ваше конкретное отображение, например:

public override void PreInitialize()
{
    Configuration.Modules.AbpAutoMapper().Configurators.Add(CreateMappings);
}
private void CreateCoreMappings(IMapperConfigurationExpression configuration)
{
     var localizationContext = IocManager.Resolve<ILocalizationContext>();
     configuration.CreateMap<Edition, EditionDto>().ForMember(dest => dest.DisplayName, options => options.MapFrom(src => localizationContext.LocalizationManager.GetString("localizationFileName", src.DisplayName)))
}
...