• 页面多语系自动切换-.resx


    实现这个需要应用到微软提供的本地资源文件Resources,实际上就是一种key  value的形式。

    语言自动切换原理有两种

    1. 读取浏览器的语言首选项
    2. 根据IP网段进行识别。比如有的人通过VPN连接到TW,浏览器会自动切换到繁体模式。可以尝试连到淘宝或者google,你就懂了。

    以下写个小Demo:

       创建一个aspx页面,拉个Lable控件,Text的value如下:

       

     切换到“设计”:

    选择“工具” ->"生成本地资源"

    这样再返回看你的项目,会生成一个对应的文件夹App_LocalResources,下面会根据你的页面名称创建一个资源文件test.aspx.resx   .resx是资源文件的后缀名

    这个时候aspx页面会自动生成这些标识,这些的作用就是用来注册到资源文件,当页面运行时,会去找test.aspx.resx这个资源文件 ,看是否有提供相符合的语言版本。

    另外,在这个Lable的Text值,是默认的语言

    这时再创建一个resx,我习惯直接复制系统帮我们自动生成的resx文件,这样在开发中就省去了很多麻烦了。这个例子只演示下繁简体的切换,注意下图的资源文件的命名方式。这个是固定的命名规则

    即:aaa.aspx.resx   如果是中文的resx :aaa.aspx.zh-CN.resx   ,如果需要更多的语言支持,自己谷歌或百度下

    看下页面的效果:IE 和Chrome对比   ,为了模拟出效果,chrome为简体   IE(11)为繁体   ,设置浏览器的语言首选项,可以看下图

    当然,这边会有更多的拓展,

        比如如果是以前的页面已经做了资源文件了,现在需要多加个功能标题,用什么方式去修改呢?

        再或者项目中需要把js的提示语也改成有繁简的怎么改了?

        aspx页面cs后台,怎么去调用资源文件呢?

                  这些问题留给大家,有需要帮助的,可以给我留个言~

  • 相关阅读:
    [原创]SQL经验
    DotNetBar技巧经验集合
    正则表达式的那些小角落
    [转]验证数字的正则表达式集
    项目受源代码管理。向源代码管理注册此项目时出错。建议不要对此项目进行任何更改
    DateGridView的一些技巧
    个人的CodeSmith和.NetTiers的学习心得及经验总结
    常用代码
    mysql 数据库常用命令
    XP2防火墙拒绝网上邻居访问的解决
  • 原文地址:https://www.cnblogs.com/byvar/p/4012861.html
Copyright © 2020-2023  润新知