Resx文件在可移植类库中无法正常工作

时间:2013-06-28 20:47:34

标签: asp.net resx

我正在使用位于可移植类库中的本地化字符串资源的ASP.NET项目。它编译好,但在运行时,ResourceManager总是只返回资源的基础文化中的字符串。它忽略了当前线程的文化,当我直接指定文化时它甚至会忽略。

例如,当我写

Localized.General.ResourceManager.GetString( “Kommentar”,CultureInfo.CreateSpecificCulture( “EN-GB”));

它返回我的基础文化的字符串,即德语,尽管它显然应该返回英语字符串。

如果我将资源移动到常规的.NET 4库中,问题就会消失。

如果它很重要,我正在使用Visual Studio 2012,.NET 4作为ASP.NET项目,而我的目标是在PCL中使用.NET 4和Windows Store应用程序。

非常感谢任何帮助。

谢谢,

阿德里安

1 个答案:

答案 0 :(得分:3)

如果其他人遇到同样的问题:问题与我的基本语言有关,即德语。我不知道可移植类库总是带有以下默认汇编属性:

[assembly: NeutralResourcesLanguage("en")]

这覆盖了主项目中的德语基础语言设置,从而导致上述所有问题。