全球化与.NET中的本地化

时间:2015-02-06 08:12:17

标签: c# .net localization asp.net-mvc-5

除了使用资源文件之外,在.Net Web应用程序中实现本地化和全球化的最佳方法是什么?

在以前的项目中,我使用资源文件实现了,但现在客户端希望使用不同的方法,例如通过数据库等管理

1 个答案:

答案 0 :(得分:0)

请遵循以下几点:

  1. 从程序源代码中隔离所有用户界面元素。     将它们放在资源文件,消息文件或私有数据库中。
  2. 在整个生命周期中使用相同的资源标识符 项目。更改标识符使得更新本地化变得困难 从一个构建到另一个构建的资源。

  3. 如果在多个上下文中使用,请制作相同的多个副本 串。相同的字符串可能具有不同的不同翻译 上下文。

  4. 仅在资源中放置需要本地化的字符串。离开 非本地化字符串作为源代码中的字符串常量。

  5. 动态分配文本缓冲区,因为文本大小可能会扩展 翻译。如果必须使用静态缓冲区,请将它们设置得特别大 (也许加倍英语字符串的长度)以适应 本地化的字符串。

  6. 请记住,由于本地化,对话框可能会扩展。对于 例如,一个占据整个屏幕的大对话框 低分辨率模式可能需要调整大小时使用不可用的大小 本地化。

    1. 避免使用位图和图标中的文本,因为这些文本很难本地化。 不要在运行时动态创建文本消息 连接多个字符串或从静态中删除字符 文本。单词顺序因语言而异,因此文本的动态组合 以这种方式需要更改代码以本地化为某些语言。