resx文件是否适合国际化?

时间:2009-04-30 08:28:17

标签: .net localization internationalization resx

我被赋予了国际化大型客户端 - 服务器应用程序的任务。我的职责是让我的应用程序“World Ready”,然后将已编译的应用程序和资源传递给另一个国家的同事进行翻译并发布给他们的客户。将有几个国家,因此有几个单独的翻译。

这里的关键是我需要一个简单的两步发布流程:

第1步:我为各个国家的同事编制并发布了“World Ready”应用程序

第2步:他们执行资源本地化,然后发布给客户

想要添加让App World Ready - >的额外步骤发送文件进行翻译 - > 等待几周翻译 - > 编译到应用 - > 发布应用

我一直在研究.NET全球化和resx文件的使用。从我所看到的resx文件被编译到应用程序中,因此编译后无法更改。甚至卫星组件似乎也不易编辑。即使我在这一点上错了,如何将卫星组件的更改反映回我项目中的resx文件?

现在问题。 鉴于我只是想首先编译应用程序并让翻译得到处理,resx文件是正确的方法,还是应该放弃它们并编写一个定制的数据库驱动的解决方案,可以在应用程序之后轻松编辑已编译?

希望一切都有道理。期待你的想法。

3 个答案:

答案 0 :(得分:16)

是的,resx文件是最好的解决方案。

要翻译资源,您应该查看本地化工具,例如Passolo。它确实

  • 将原始resx作为输入并生成您需要签入代码库的已翻译resx文件
  • 将编译的程序集作为输入并生成附属程序集。

我们正在翻译程序集,因为这也允许本地化gui布局。要允许外部工具打开gui编辑器,它需要代码,这是在程序集中。

如果您只专注于测试翻译,那么resx的翻译可能更容易处理。

这样的外部工具提供了这些重要的功能:

  • 将所有字符串聚集在一起,您不必处理数百个resx文件
  • 管理多种语言的翻译文本,主要是使用gui designer。
  • 识别源文本是否已更改或已添加,因此您现在需要翻译哪些文本。
  • 仅翻译一次重复文本。
  • 通常很好用来编辑翻译。
  • 导出/导入到csv以及其他工具甚至其他公司处理的类似格式。

答案 1 :(得分:2)

是的,.NET中的整个全球化框架都是基于RESX文件和它们创建的卫星组件。编译完主应用程序后,可以将RESX文件独立编译到其卫星程序集中。

我知道那里有一些工具可以帮助翻译过程,但是我并不喜欢任何关闭他们的工具。

答案 2 :(得分:0)

检查Rick Strahl的resource provider