快速业务通道

ASP.NET 2.0 国际化/本地化应用程序的实现总结(多语言,多文化页面的实现)

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-04-11

最近给单位做了一个业务下单系统,由于在全球几个国家都有业务办事处,所以下单系统做的是多语言界面的

我实现多语言是利用了ASP.NET2.0的资源文件,其实据我所知除了资源文件的方式,在数据库里面建多个表中进行一个区域文化映射,也是解决国际化的一种方式(关于这种方式感兴趣的朋友可以自己试试)

现在我把实现国际化用到的相关知识总结如下:

在总结全球化知识前,先来了解一个名词:表达式语法

表达式语法格式:<%$ ... %>

它是ASP.NET2.0新增了一种声明性表达式语法,可在分析页之前将值替换到页中.

ASP.NET表达式是基于运行时计算的信息设置控件属性的一种声明性方式.

ASP.NET表达式主要应用在:连接字符串,应用程序设置,资源文件等地方.

ASP.NET 表达式的基本语法如下:

<%$ expressionPrefix: expressionValue %>

下面演示表达式语法在连接字符串和应用程序设置的应用:

a.表达式语法在连接字符串的应用

将存储在Web.config文件中的连接字符串的值设置为控件的连接字符串属性 <asp:SqlDataSource ID="SqlDataSource1" Runat="server"

    SelectCommand="SELECT * FROM Employees"

    C>

</asp:SqlDataSource>

<configuration>

  <connectionStrings>

    <add name="NorthwindCon"

      c

      providerName="System.Data.SqlClient" />

  </connectionStrings>

</configuration>

b.表达式语法在应用程序设置的应用

使用表达式来引用在Web.config配置文件中定义的应用程序设置 <asp:Label ID="Label1" runat="server" Text="<%$ AppSettings:Txt %>"></asp:Label>

<appSettings>

<add key="Txt" value="Abc"/>

</appSettings>

其实表达式语法还有一个重要的应用,就是在资源文件中的使用,而资源文件正是我实现本地化的基础.

ASP.NET2.0提供了三项关于网站国际化的特性:

(1)自动侦测浏览器的语言

通过确定发出请求的浏览器的语言,可以方便地根据用户的区域性调整应用程序的行为

(2)声明本地化的表达式

声明性资源表达式可使您的应用程序使用多种语言,而不必手动编写代码来检索资源并在页中进行替换

只需使用ASP.NET2.0中新提供的表达式语法即可对资源替换进行定义

(3)生成本地资源

ASP.NET2.0支持标准的resx文件格式自动进行运行时资源检索。

Vs2005也提供了相应的支持,可方便地生成资源


A.区域性的格式设置

区域性名称和标识符名称遵循RFC 1766标准,具体请查看msdn

请看下图,我抓取的部分区域性图片:
 
2008112515550052.gif(10.59 K)

2009-2-27 10:22:10

 


区域性通常分为三个类型:固定区域性、非特定区域性和特定区域性。

a.固定区域性不区分区域性。可以使用空字符串("")或者按区域性标识符0x007F来指定固定区域性,它与英语语言关联,但不与任何国家/地区关联。

b.非特定区域性是与某种语言关联但不与国家/地区关联的区域性。

c.特定区域性是与某种语言和某个国家/地区关联的区域性。

例如:"fr"(法语)是非特定区域性,而"fr-FR"(法语(法国))是特定区域性

特别提示:"zh-CHS"(简体中文)和"zh-CHT"(繁体中文)是非特定区域性。

区域性是有层次结构的,即特定区域性的父级是非特定区域性,而非特定区域性的父级是InvariantCulture

利用ASP.NET2.0可轻松地逐页更改区域性设置

只需将UICulture和Culture(区域性)属性添加到.aspx等

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号