大家好。
有人能帮我吗?使用.Net Framework的ASP.NET Core。
主题:本地化
我根据文档进行了所有设置。
但是当我使用:
IStringLocalizer<HomeController>
完美地工作的翻译。
IStringLocalizer<Resources.Views.Shared.Test>
完美地工作翻译。
在视图中
@inject IViewLocalizer localizer
工作已经被正确地翻译了。
然而,在所有以前的情况下,资源都是在ASP.NET CORE项目中创建的。
如果我创建一个单独的项目并使用:
IStringLocalizer<ClassLibrary1.Test>
无法工作,也不会翻译。
它只返回默认语言。
如果我强制在 ASP.NET Core 控制器的代码中:
ResourceManager rm = new ResourceManager(typeof(ClassLibrary1.Test));
string test = rm.GetString("Hello", new System.Globalization.CultureInfo("en-US"));
它的翻译效果不佳。
它只会返回默认语言。
也就是说,我怀疑这与它处于一个独立项目有关。
现在奇怪的是,我创建了另一个ClassLibrary并将代码放进去:
string test = Test.ResourceManager.GetString("Hello", new System.Globalization.CultureInfo("en-US"));
如果我在ASP.NET CORE中引用这个ClassLibrary,返回的是标准语言,这是错误的。
如果我在Asp.Net中引用它,它可以正常工作并且翻译得很完美。
这可能是一个已知的bug吗?
在设计中使用的类库是否需要一些特定的配置来适用于asp.net core?
我想相同的代码应该在asp.net和core asp.net with .NET framework中都能正常工作。
有人遇到过类似的问题吗?