ASP.NET核心本地化 – 不从资源文件返回值,仅返回Name

我正在尝试实现本地化,但是在运行时只返回Name。

Startup.cs

public void ConfigureServices(IServiceCollection services) { services.AddLocalization(options => options.ResourcesPath = "Resources"); services.AddMvc() .AddViewLocalization() .AddDataAnnotationsLocalization(); } public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) { ..... List supportedCultures = new List { new CultureInfo("no"), new CultureInfo("en") }; app.UseRequestLocalization(new RequestLocalizationOptions { DefaultRequestCulture = new RequestCulture("no"), SupportedCultures = supportedCultures, SupportedUICultures = supportedCultures }); app.UseStaticFiles(); app.UseMvc(routes => { routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}"); }); } 

该项目包含一个名为Index.cshtml的视图,位于“Views \ Home”中。 Resources文件夹包含两个资源文件: Views.Home.Index.en.resxViews.Home.Index.no.resx

Index.cshtml

 @inject IOptions LocalizerOptions @inject IViewLocalizer Localizer @{ var requestCulture = Context.Features.Get(); var cultureItems = LocalizerOptions.Value.SupportedUICultures .Select(c => new SelectListItem { Value = c.Name, Text = c.DisplayName }) .ToList(); } @{ ViewData["Title"] = Localizer["Title"]; } 
@Localizer["HeaderAbout"]
@Localizer["About"]


@requestCulture.RequestCulture.Culture.Name

@Localizer [“关于”]返回“关于”

@ requestCulture.RequestCulture.Culture.Name返回“no”

你能添加Localization.AspNetCore.TagHelpers nuget包吗? 在我添加之后,我得到了本地化工作。

另请参阅: ASP.Net核心MVC中的本地化无法正常工作 – 无法找到具有类似问题的资源文件 。