WebAPI与国际化教案.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Web API与国际化 软件国际化是在软件设计和文档开发过程中,使得功能和代码设计能处理多种语言和文化习俗,在创建不同语言版本时,不需要重新设计源程序代码的软件工程方法。这在很多成熟的软件开发平台中非常常见。对于.net开发者来说,我们一般可以通过以下两种方式来实现软件的国际化。 语言配置文件 资源文件 在.net平台中,软件的国际化主要依靠工作线程的国际化来完成。在.net框架的的处理线程中,我们通过设置Thread.CurrentCulture属性来实现对日期、时间、数字、货币值、文本的排序顺序,负载约定和字符串比较的默认值的格式确定,默认情况下,这个属性来自于“控制面板”的“区域和语言选项”中的用户区域性。当然,在软件运行过程中也可以通过手动的方式强制改变Thread.CurrentCulture属性值。CurrentUICulture属性则用来确定需要向用户呈现的资源格式,它对软件的操作界面来说最有用,因为它标识了在显示UI元素时应使用的语言。在.net中通常给软件设置不同的UI资源文件,使得软件运行时通过CurrentUICulture属性值来选择不同语言的资源文件渲染软件界面。线程的CurrentUICulture 和 CurrentCulture 属性一般设置为同一个CultureInfo对象,也就是就他它使用相同的语言、国家信息,然而也可将它们设为不同的对象。例如一个美国人在北京借用了一台操作系统是简体中文版的计算机进行工作时,就可以通过这种方式让软件满足美国用户的使用需求。 下面的例子解释了对于不同的Thread.CurrentCulture属性值,同一个日期字符串转换为日期类型时会生成不同结果 复制代码 1 static void Main(string[] args) 2 { 3 string birthdate = 02/06/2013; 4 DateTime dateTime; 5 dateTime = DateTime.Parse(birthdate); 6 Console.WriteLine(dateTime.ToString(yyyy年MM月dd日)); 7 Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo(en-GB); 8 dateTime = DateTime.Parse(birthdate); 9 Console.WriteLine(dateTime.ToString(yyyy年MM月dd日)); 10 Console.Read(); 11 } 复制代码 下面的例子解释了对于不同的Thread.CurrentUICulture属性值,框架会选择不同的资源文件读取其中的值,以便向使用不同语言的用户呈现不同的信息。运行前,需要在项目中建立如下的资源文件。 其中,文件名中的语言代码代表不同的国家及使用的语言,如en-US=美国英语、en-GB=英国英语等等。文件名不带语言代码的为默认资源文件,框架会根据当前计算机所在的区域来调用这个资源文件。由于我在中国,并且使用简体中文的操作系统,所以,会将默认资源文件中的中文字符读出。 复制代码 1 static void Main(string[] args) 2 { 3 string hello; 4 hello = International.Hello; 5 Console.WriteLine(hello); 6 Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(ja-JP); 7 hello = International.Hello; 8 Console.WriteLine(hello); 9 Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(en-US); 10 hello = International.Hello; 11

文档评论(0)

502992 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档