ASP.NET Core本地化无法在_Layout头部工作

时间:2017-06-13 19:49:32

标签: asp.net-core

我的MVC项目中有_Layout.cshtml,我想通过ASP.NET Core本地化设置页面<title>

这是(简化)repro:

@inject IHtmlLocalizer<SharedResources> SharedLocalizer;

<!DOCTYPE html>
<html>
<head>
    <title>@SharedLocalizer["My Default Language Text"]</title>
</head>
<body>
    @SharedLocalizer["My Default Language Text"]
    @RenderBody()
</body>
</html>

body中的资源正在本地正确定位,并按预期呈现资源文件中的文本。但是head中的资源不是并保持&#34;我的默认语言文本&#34;无论我尝试什么。

请注意,我在两种情况下都看到了这种行为:

  1. 通过@inject IHtmlLocalizer<SharedResources> SharedLocalizer使用共享资源(如上面的代码所示)
  2. 或当我通过IViewLocalizer
  3. 使用@inject Microsoft.AspNetCore.Mvc.Localization.IViewLocalizer Localizer

    我正在运行v1.1.3Microsoft.AspNetCore.*个包。

1 个答案:

答案 0 :(得分:2)

我刚发现我的问题与此错误有关:https://github.com/aspnet/Localization/issues/277(非英语本地化作为默认本地化)。