7

为了让事情更有趣,在 Asp.net Mvc App 中实现全球化的最佳方法是什么

4

3 回答 3

8

全球化是关于生成从字符串或标识符到其他语言翻译的映射,而本地化是关于使用该映射来找到正确的翻译。全球化发生在开发过程中,本地化发生在运行时。

我对使用 ASP.NET 执行此操作不是很有经验,但是...

至于如何,我看到的最常见的方法是每个程序集(或每个 UI 组件)的每种语言都有一个字典,其中值是本地化字符串。键通常是静态类或枚举上的只读成员。通常有一个便利类,其成员从标识符到本地化消息的映射。

字典通常存储在单独的文件中,并以针对人工翻译的格式存储。

更多信息:http: //msdn.microsoft.com/en-us/library/aa478974.aspx

于 2008-11-10T15:43:58.583 回答
4

来自W3C I18n 常见问题解答

本地化是指调整产品、应用程序或文档内容以满足特定目标市场(“区域设置”)的语言、文化和其他要求。

国际化(或全球化)是产品、应用程序或文档内容的设计和开发,可以为不同文化、地区或语言的目标受众轻松本地化。

我从来没有全球化过 ASP.NET MVC 应用程序,如果我不能帮助你,很抱歉。

于 2008-11-10T15:30:07.457 回答
0

System.Globalization命名空间包含定义文化相关信息的类,包括语言、国家/地区、使用的日历、日期、货币和数字的格式模式以及字符串的排序顺序。

至于它和本地化有什么区别?我想这可以解释为汽车和城市之间的区别。一个是目的地,另一个是你如何到达那里。

我没有使用过 ASP.NET MVC,但我使用过类似的 Monorail。如果我想本地化一个 MR 应用程序,我可能会使用一个单独的视图文件树。所以,虽然,只有英文,我有:

\Views\Home\*.asp
\Views\Admin\*.asp
\Views\Products\*.asp

对于一个国际化的应用程序,我会有类似的东西:

\en\Views\Home\*.asp
\en\Views\Admin\*.asp
\en\Views\Products\*.asp
\de\Views\Home\*.asp
\de\Views\Admin\*.asp
\de\Views\Products\*.asp
\es\Views\Home\*.asp
\es\Views\Admin\*.asp
\es\Views\Products\*.asp
于 2008-11-10T15:39:19.170 回答