使用Angular 4模板在.NET Core 2.0中不会更改本地化

时间:2018-01-17 05:38:16

标签: aspnetboilerplate

我们在.NET Core 2.0中使用带有Angular 4模板的ASP.NET Boilerplate版本3.3.0。

本地化无效。

我每次都将语言设置为CultureInfo.CurrentUICulture

当我在客户端更改语言时,cookie设置正确但当前语言没有更新。

1 个答案:

答案 0 :(得分:-1)

这已在模板v3.4.0中修复:507eecf

基本上,这涉及 topbar-languageswitch.component.ts 中的服务器调用:

// Before
changeLanguage(languageName: string): void {
  abp.utils.setCookieValue(
    "Abp.Localization.CultureName",
    languageName,
    new Date(new Date().getTime() + 5 * 365 * 86400000), //5 year
    abp.appPath
  );

  location.reload();
}

// After
changeLanguage(languageName: string): void {
    const input = new ChangeUserLanguageDto();
    input.languageName = languageName;

    this._userService.changeLanguage(input).subscribe(() => {
        abp.utils.setCookieValue(
            'Abp.Localization.CultureName',
            languageName,
            new Date(new Date().getTime() + 5 * 365 * 86400000), //5 year
            abp.appPath
        );

        window.location.reload();
    });
}