ASP.NET国际化

来源:互联网 发布:金蝶初始数据如何录入 编辑:程序博客网 时间:2024/04/30 21:34

 

ASP.NET通过读取资源文件实现国际化。

资源文件有全局资源文件和本地资源文件。如果页面比较多的网站,我建议使用本地的资源文件,这样的话每个页面会对应自己的资源文件,当出现错误的时候,你很很轻松地修改错误。

1.语言信息的初始化

 protected override void InitializeCulture()

 {  

     string languageId = "en-US";

    //可以通过Request.UserLanguages[0]获取浏览器的语言信息,

      当然你可以根据自己不同的需要得到语言信息

    UICulture = languageId;

    Culture = languageId;

    System.Threading.Thread.CurrentThread.CurrentCulture=

   System.Globalization.CultureInfo.CreateSpecificCulture(languageId);

   System.Threading.Thread.CurrentThread.CurrentUICulture=

    new  System.Globalization.CultureInfo(languageId);

       

   }

2.在页面获取资源文件中的值

式:
<asp:Label ID="lbl" runat="server" meta:resourcekey="lbl" />

显式:
 
<asp:Label ID="lbl2" runat="server" Text="<%$ Resources:lbl.Text %>" ToolTip="<%$ Resources:lbl.ToolTip %>" />
全局:
<asp:Label ID="lbl3" runat="Server" Text="<%$ Resources:MyGlobal,GlobalText %>" />


3.在cs中获取资源文件中的值

this.GetLocalResourceObject("key");其中key对应资源文件中的keyname
this.GetGlobalResourceObject("GblResource""key") ;其中GblResource是对应全局资源文件的名称,key是其中的keyname

原创粉丝点击