ASP.NET CORE(.NET Framework)和本地化

本文关键字:NET 本地化 CORE ASP Framework | 更新日期: 2023-09-27 18:05:03

人。好吧

有人能帮我吗?ASP。NET Core与。Net Framework

主题:本地化

我根据文件做了所有的设置。

当我使用:

IStringLocalizer<HomeController> 

翻译完美。

IStringLocalizer<Resources.Views.Shared.Test>

翻译完美。

视图中

@inject IViewLocalizer localizer

作品翻译正确。

但是,在以前的所有情况下,资源都是在ASP中创建的。NET CORE项目。

如果我创建一个单独的项目并使用:

IStringLocalizer<ClassLibrary1.Test> 

不起作用,无法翻译。

它只返回默认语言。

如果我在ASP。NET控制器核心:

ResourceManager rm = new ResourceManager(typeof(ClassLibrary1.Test));
string test = rm.GetString("Hello", new System.Globalization.CultureInfo("en-US"));

它翻译不好。它只返回默认语言。

也就是说,我怀疑这与另一个项目有关。

现在奇怪的是,我创建了另一个类库,并放入了代码:

string test = Test.ResourceManager.GetString("Hello", new System.Globalization.CultureInfo("en-US"));

如果我在ASP。NET CORE,返回的是标准语言,这是错误的。

如果我在Asp中引用。网络,它工作和翻译完美。

这会是一个已知的bug吗?

asp.net核心中使用的设计中的类库的一些特定配置?

我想同样的代码应该在asp.net和核心asp.net中都能工作。NET框架。

有人遇到过类似的问题吗?

ASP.NET CORE(.NET Framework)和本地化

问题已解决。

已确定资源DLL未复制到ASP。NET核心项目。

只需在构建后手动复制即可解决所有问题。这是目前唯一的解决方案。

此处提供详细信息:https://github.com/aspnet/Mvc/issues/5219