为什么不使用本地化资源?

时间:2013-01-11 15:45:51

标签: c# asp.net localization cultureinfo

我正在研究现有的项目,目前我正面临一个奇怪的问题:

在主Web项目中,将一些资源文件存储在App_GlobalResources文件夹中:

  • Application.fr.resx
  • Application.resx
  • Application.designer.cs

在代码中,以这种方式访问​​这些资源:

global::Resources.Application.Some_Resource

这很有效,设置为FR文化时会找到本地化资源。

在另一个项目中(由主Web项目引用),资源存储在Resources文件夹中:

  • Messages.fr.resx
  • Messages.resx
  • Messages.designer.cs

通过致电:

访问它们
My.Project.Namespace.Messages.Some_Other_Resource

在这种情况下,会找到并使用资源,但不考虑文化,返回的值始终是默认值。

我用Google搜索,但没有找到任何真正有用的东西。我不熟悉ASP.NET文化,所以也许我错过了一些明显的东西。

知道为什么会这样吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我的一些项目遇到了这个问题。 我的猜测是,在你的一个项目中,你正在设置某个地方的UICulture,但你不会在另一个项目中进行。这可能在您的“基本”页面代码或全局应用程序代码中。