webform 本地化资源实现中英双语系统

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Yubu_/article/details/73742160

1 前端模板文件里面写两个标签,可以选择语言


<a href="javascript:setLanguage('English');"  style="color:white;" id="languageEnglish">English</a>  
<a href="javascript:setLanguage('Chinese','');" style="color:white;" id="languageChinese">中文</a>

<script type="text/javascript">
       function setLanguage(language) {
            $.cookie('LanguageSelect', language, { expires: 300, path: '/' });
            window.location.reload();
        }
   </script>

2 工具类里面的两个方法,识别当前用户选择的语言类型。该方法在系统内经常用到。。。


public class LanguageHelper
    {
        public static bool IsEnglish()
        {
            HttpCookie languageCookie = HttpContext.Current.Request.Cookies.Get("LanguageSelect");

            bool res = false;
            if (languageCookie != null && "English".Equals(languageCookie.Value))
            {
                res = true;
            }
            return res;
        }

        public static string GetLanguageId()
        {
            string strLanguageId = "zh-CN";
            if (IsEnglish())
            {
                strLanguageId = "en-US";
            }
            return strLanguageId;
        }
    }

3 在页面基类里面统一进行语言设置


       protected override void InitializeCulture()
        {
            string strLanguageId = LanguageHelper.GetLanguageId();
            Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(strLanguageId);
            Thread.CurrentThread.CurrentUICulture = new CultureInfo(strLanguageId);

            base.InitializeCulture();
        }

4 对页面进行本地化设置,生成本地化资源,创建并且编辑  XXX.aspx.resx  XXX.aspx.zh.resx  XXX.aspx.en.resx等资源文件。。如果开发更多语言类型 的系统,则需要编辑更多的资源文件就可以了。。。

猜你喜欢

转载自blog.csdn.net/Yubu_/article/details/73742160