|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
既然话题已经抄起,我打算今晚发篇博文再引导一下舆论方向,使它再火两天,抛砖引玉,而且赵劼先生一直在跟帖,使.NET阵营的我感到万分难得。asp.net|js|程序 国际化,是指在你的使用程序中撑持多种言语和文明。这包含供应当地化的文本动静和格局(比方日期),以便活着界分歧中央的用户可以以一种他们了解的格局和言语来寓目你的web页面。跟着环球web的不休增加,这类范例的功效也变得日趋主要。我们将疾速地看一下每一个框架怎样同意你内在化页面文本(比方域标签)以供应分歧的当地化撑持。
撑持分歧的当地化的JSF使用程序与别的J2EE使用程序完成体例差未几利用一样的完成体例-经由过程把当地文本数据存储到一个资本包属性文件中。你将对每种当地化撑持供应一个属性文件(每种当地化以一个言语代码和一个国度代码(比方en-US加以标记)。切换显现言语实际上是一个重定向到别的一个properties文件的成绩。在前一个ASP.NET刊行版本中,要在一个ASP.NET使用程序中撑持分歧的当地化相称贫苦,但是,在ASP.NET2.0中在这一方面有了很年夜的改善。比方,在ASP.NET2.0中,当在分歧言语之间切换时不必要从头编译。
为了使JSF使用程序撑持分歧当地化功效,我把一个WebReservations.properties文件增加到使用程序并完成了撑持en-US的当地化。预订页面的题目为"MakeaReservationforConferenceRoom"。我复杂地在这个资本绑定属性文件中增加了一个键/值对:
#示例ResourceBundle属性文件
ReserveRoomTeamLabel=ReservationTeam:
我能够为统一个组件创立任何数目的当地化特定的动静。然后,我必要告知使用程序怎样利用这个文件-经由过程把以下语句增加到faces-config.xml文件中:
<message-bundle>WebReservations.properties</message-bundle>
<locale-config>
<default-locale>en</default-locale>
<!--Addotherlocaleshere.-->
</locale-config>
经由过程援用一个资本包,你可使用一个到这个键的援用来取代在JSF标注中的文本。这里有一个例子:
<ui:labelbinding="#{ReserveRoom.lblReserveTeam}"id="lblReserveTeam"style="left:48px;top:96px;position:absolute"text="#{messages.ReserveRoomTeam}"/>
ASP.NET为分歧的当地化供应资本文件撑持。这些资本文件都有一个扩大名.resx。ASP.NET2.0中引进了资本表达式-你能够把它们放到ASP.NET标注中。这些表达式看上往相似于ASP.NET数据绑定表达式。注重,开辟者能够一同指定一个使用程序的当地和全局资本。在这个例子中,我创建了一个当地资本文件以响应于新的预订页面。
当地资本必要安排在一个文件夹"App_LocalResources"下。这个文件夹下的每个文件都应当具有相似于"{aspxpagename}].aspx.resx"的名字。我创立了一个文件Reservations.aspx.resx。在这个文件中,我为"ReservationTeam:"增加了一个出口-就象我在JSF使用程序所完成的那样。为使页面可以存取这些资本而且在运转时候可以给标签付与不异的文本,你能够增加上面的表达式:
<asp:LabelID="Tea"runat="server"Text=<%$Resources:ReservationsTeamLabel%>></asp:Label>
ASP.NET-增加当地化的文本
JSF-增加当地化的文本
假如你还没有开辟过一个完成国际化请求的使用程序,那末你未来极可能会做如许的事情。不外,不管是利用JSF仍是利用ASP.NET城市轻松地完成这类义务。在经过全球个人PC市场占有90%的微软对asp.net不断优化与整合后,asp.net与微软自身平台的动用上更加的高效,加上asp.net在应用上非常容易上手,相信asp.net仍会是最多客户选用的脚本语言,并会在未来几年继续领跑。 |
|