ASP.NET AJAX的国际化与本地化支持(学习笔记)

今天学习老赵的视频(ASP.NET AJAX深入浅出系列课程(18)—) 以下笔记分享!更多详细请访问原视频资料!

正文:

  1. 新建全局资源文件夹:App_GlobalResources (右键-->asp.net文件夹-->App_GlobalResources)
  2. 新建几个资源文件,如:GlobalResource.en-US.resx ,里面输入英文, GlobalResource.zh-CN.resx 里面输入中文

Page:

<body>

    <form id="form1" runat="server">

    <div>

        <asp:Label ID="LblShow" runat="server" Text="Label"></asp:Label>

    </div>

    </form>

</body>
 
    /// <summary>

    /// 改变一个页面的语言文化,务必在该方法改变[当然也可以在Page_Load事件里面写]
    /// 老赵建议覆盖这个方法

    /// </summary>

    protected override void InitializeCulture()

    {

        //1.这里可以根据IE浏览器的设置来获取 工具-->Internet 选项-->语言[把需要设置的语言上移到第一位]

        this.UICulture = this.Culture = this.Request.UserLanguages[0];      

        //2.

        /*this.UICulture = "en-us";

        this.Culture = "en-us";


        System.Threading.Thread.CurrentThread.CurrentUICulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-us");

        System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture("en-us");*/



        //3. 设置页面的 <%@ Page Language="C#" Culture="auto" UICulture="auto" %>

        

        //4. 全局设置 web.config

                //<system.web>

                //<!-- 设置 全局 语言

                //<globalization culture="auto" uiCulture="auto" />

                //</System.Web>

        //另:<globalization culture="auto" uiCulture="auto" requestEncoding="utf-8" responseEncoding="utf-8" /> 我以前遇到乱码问题,在这里设置也得到解决!

        base.InitializeCulture();

    }
protected void Page_Load(object sender,EventArgs e)

   {

       //默认TodayIs 为资源文件里面的key

       this.LblShow.Text = Resources.GlobalResource.TodayIs + DateTime.Now.ToString("D") ;

       //this.Page.Culture = Resources.GlobalResource.ResourceManager.IgnoreCase.

       //改变他的默认

       Response.Write(this.Request.UserLanguages[0]);

   }


本地资源:

<body>

    <form id="form1" runat="server">

    <div>
    <!%—等同于上面:Resources.GlobalResource.TodayIs ,
      这种写法我很少用:<%$ Resources:GlobalResource, TodayIs %>
      读取资源文件中key为TodayIs的值!
   --%>

    <asp:Label ID="Label1" runat="server" Text="<%$ Resources:GlobalResource, TodayIs %>" /><%=DateTime.Now.ToString("D") %>

    </div>

    </form>

</body>

over

如果上面有哪里写错了或者说错了!欢迎各位指出! 以上只代表个人理解

 

你可能感兴趣的:(asp.net)