我有一个关于在mvc3应用程序中组织.resx文件的问题。到目前为止,我已成功完成以下任务:
Resources.resx //默认语言 Resources.en.resx //英语语言
但我希望在我的班级图书馆中有这样的组织:
DefaultLanguage foder - Resources.resx
en文件夹 - Resources.en.resx
我想按文件夹组织资源。我认为这对于翻译网站的人来说更合适,而且更易于维护。当我以这种方式组织资源时,网页返回错误...找不到错误。我错过了什么吗?我知道你不应该在命名空间中有文件夹名称,因为这意味着View中的引用资源依赖于文件夹名称,这是不正确的。
重点是我希望在文件夹中组织资源时具有相同的资源行为...
顺便说一句:我在网上查看,找不到合适的解决方案。
感谢您的回答!
答案 0 :(得分:2)
MVC3使用ASP.NET资源管理。有关详细信息,请参阅ASP.NET documentation。如果要依赖ASP.NET行为并生成强类型类,则必须将资源文件与默认语言和其他语言特定资源文件保持在一起。
要使用与您建议的树结构相同的树结构,您必须实现自己的资源管理。您可能不希望这样做,因为(至少一些)资源编辑工具依赖于该行为。
在我们的项目中,我们为每个视图提供了一个资源(及其翻译)。它们位于MVC3项目中的文件夹本地化中。在内部,我们保持与Views文件夹中相同的树结构。这与ASP.NET本地资源的组织大致相同。常用字符串保存在Localization文件夹根目录下的一个.resx文件中。这确保了可维护性。
为了让你的翻译人员感到高兴,你必须选择好的.resx编辑工具。