使用CultureInfo实现多语言本地化理论.ppt

上传人:xt****7 文档编号:5186842 上传时间:2020-01-22 格式:PPT 页数:41 大小:2.47MB
返回 下载 相关 举报
使用CultureInfo实现多语言本地化理论.ppt_第1页
第1页 / 共41页
使用CultureInfo实现多语言本地化理论.ppt_第2页
第2页 / 共41页
使用CultureInfo实现多语言本地化理论.ppt_第3页
第3页 / 共41页
点击查看更多>>
资源描述
使用CultureInfo实现多语言本地化 ASP NET企业级应用编程 第14章 北京奥运会官网 汉语 北京奥运会官网 英语 北京奥运会官网 法语 区域文化在页面元素设置区域文化在后台代码设置区域文化资源文化根据站点文化获取本地资源根据站点文化获取全局资源 本章目标 一 区域文化 设置当前文化 在Page指令中设置文化以编程方式设置文化 在Page指令中设置Culture Culture属性 常用的文化名称zh CN Chinese China en US English UnitedStates en GB English UnitedKingdom protectedvoidPage Load objectsender EventArgse this lblToday Text DateTime Now ToString D this lblPrice Text 11 5 ToString c 在Page指令中自动检测文化 如果需要使用检测到的浏览器首部自动设置Culture 就可以通过设置页面指令的Culture来实现 下面将Culture设置为 auto zh cn 表示若不能从浏览器检测到默认的语言参数设置时 冒号后面的文化名称用来指定默认文化 文化影响ASP NET控件 Page指令中Culture属性值会自动影响Calendar控件的呈现行为 在配置文件中设置文化 在web config中添加如下配置 那么若不能从浏览器检测到默认的语言参数设置时 整个站点的文化就被设置称en US 如果用户设置了语言 则采用用户选择的语言文化 以编程方式设置文化 Page Culture通过该属性设置当前页面的文化Request UserLanguages获取用户浏览器中设置的语言首选项集合System Globalization CultureInfo GetCultures获取由指定CultureTypes参数筛选的区域列表 检测用户的习惯语言列表 Request UserLanguages可以获取请求的用户的习惯语言列表 protectedvoidPage Load objectsender EventArgse if IsPostBack string list Request UserLanguages foreach stringsinlist stringname s Split 0 bltAuto Items Add name protectedvoidbltAuto Click objectsender BulletedListEventArgse Page Culture bltAuto Items e Index Value this lblToday Text DateTime Now ToString D this lblPrice Text 11 5 ToString c 获取特定文化的区域性列表 CultureInfo类的GetCultures方法获取由指定CultureTypes筛选的区域性列表 protectedvoidPage Load objectsender EventArgse if IsPostBack CultureInfo list CultureInfo GetCultures CultureTypes SpecificCultures RadioButtonList1 DataSource list RadioButtonList1 DataTextField DisplayName RadioButtonList1 DataValueField Name RadioButtonList1 DataBind RadioButtonList1 AutoPostBack true RadioButtonList1 RepeatDirection RepeatDirection Horizontal RadioButtonList1 RepeatColumns 4 protectedvoidRBL SelectedIndexChanged objectsender EventArgse Page Culture RadioButtonList1 SelectedItem Value this lblToday Text DateTime Now ToString D this lblPrice Text 11 5 ToString c 获取特定文化的区域性列表 不同的文化中的字符串排序 在不同的文化中 字符串的排序结果也会受到影响 string names 苹果 牛蛙 牛肉 上面的数组在中文文化和日文文化的排序结果就不相同 protectedvoidButton1 Click objectsender EventArgse SortStringByCulture zh cn protectedvoidButton2 Click objectsender EventArgse SortStringByCulture ja jp voidSortStringByCulture stringc string names 苹果 牛蛙 牛肉 CultureInfoci newCultureInfo c Page Culture ci Name lbCultrue Text ci Name Array Sort names BulletedList1 DataSource names BulletedList1 DataBind 二 资源文化 创建本地资源 显式本地化表达式隐式本地化表达式将本地资源应用于页面属性以编程方式获取本地资源简化大块文本的本地化 创建本地资源 显式本地化表达式资源文件必须保存在App LocalResources文件夹中 资源文件的添加资源文件的命名规则 pageName cultureName resxtest aspx resx默认的Test aspx资源文件 若没有其他资源文件符合用户的语言设置 则用此资源文件来应用test aspx zh CN resx特定文化 若符合用户特定文化语言设置 就应用此资源文件 显式本地化表达式 在页面中使用本地资源1 指令中添加UICulture属性并设其值为auto2 本地化资源表达式 隐式本地化表达式 隐式本地化表达式显式资源表达式必须对控件的每一个属性在页面进行设置 隐式本地化表达式只需简单地添加一个meta resourceKey属性到任意需要本地化的控件中 从而可以更简单地本地化一个已存在的网站 配置控件属性 隐式本地化表达式 设置本地资源文件模式 Key PropertyKey 可以任意命名 一般采用控件名称Property 必须与要本地化的控件的属性相匹配 Demo aspx resx Demo aspx en us resx 将本地资源应用于页面属性 显式资源文件PageTitleExplicit aspx resx runat server 使用资源表达式设置诸如页面标题这样的的页面属性 将本地资源应用于页面属性 隐式资源文件PageTitleImplicit aspx resx 以编程方式获取本地资源 调用Page对象的GetLocalResourceObject 方法可以获取本地资源文件的内容 protectedvoidbtLogin Click objectsender EventArgse stringrs this GetLocalResourceObject welcome ToString lbMsg Text string Format rs tbName Text 简化大块文本的本地化 当您想在网页上的特定区域显示本地化文本时 可以使用Localize控件在网页上保留显示本地化文本的位置 Localize控件从Literal控件继承 与该控件完全相同 设计时使用Localize控件将可以将本地化的静态文本与其它静态文本区分开来 简化大块文本的本地化 Localize控件的Mode属性Transform 添加到控件中的任何标记都将进行转换 以适合发出请求的浏览器的协议 如果向使用HTML以外的其他协议的移动设备呈现内容 此设置非常有用 PassThrough 添加到控件中的任何标记都将按原样呈现在浏览器中Encode 添加到控件中的任何标记都将使用HtmlEncode方法进行编码 该方法将把HTML编码转换为其文本表示形式 简化大块文本的本地化 默认资源LocalizeResource aspx resx 英文资源LocalizeResource aspx en us resx 创建全局资源 以属性方式获取全局资源以编程方式获取全局资源使用强类型获取全局资源 以属性方式获取全局资源 获取表达式 中文资源文件Site resx 英文资源文件Site en us resx 以属性方式获取全局资源 以编程方式获取全局资源 指令 自动获得语言CultureInfo CurrentCulture Name属性 获得IE语言GetGlobalResourceObject 方法 获得全局资源 以编程方式获取全局资源 stringkey CultureInfo CurrentCulture Name ToLower Replace imgCountry ImageUrl CodeFileGlobalResource ashx key key stringclassName Country stringkey context Request QueryString key ToString Bitmapbmp Bitmap HttpContext GetGlobalResourceObject className key MemoryStreamms newMemoryStream bmp Save ms System Drawing Imaging ImageFormat Jpeg Response BinaryWrite ms ToArray CodeFileGlobalResource aspx CreateImageByGlobalResource ashx 创建全局资源 使用强类型获取全局资源ASP NETFramewormk自动把本地资源编译成程序集 而全局资源就编译成一个类 这样全局资源就可以用强类型表达式在代码中处理全局资源 当创建一个资源时 一个新类会自动添加到Resources命名空间 该类以属性的形式暴露了所有资源文件中的项目 使用强类型获取全局资源 全局资源文件 App GlobalResources Country resx stringresources Resources Country ImagePath stringculture CultureInfo CurrentCulture Name ToLower imgCountry ImageUrl string Format resources culture 总结 如何为页面设置文化 如何改变客户端的文化 如何为站点创建多个文化资源 如何实现大块文本的本地化 如何以编程方式访问本地资源 练习 1 在指令中设置哪个属性可以影响本地化 UICultureCultureInheritsAutoEventWireup 练习 2 要自动检测文化可用Request 属性返回Accept Language首部的值 A UserInfoB LanguagesC AcceptLanguageD UserLanguages 练习 3 在配置文件中也可以通过设置 属性来设置文化GlobalCultureConfigSourceUICultureCulture 练习 4 对于CultureInfo类中的方法GetCultureInfo描述正确的是 A 创建表示与指定名称关联的特定区域性的CultureInfoB 检索某个区域性的缓存的只读实例C 检索高效只读的CultureInfo对象D 获取由指定CultureTypes参数筛选的支持的区域性列表 练习 5 在ASP NET页中 可以使用下列哪些方法检索由ASP NET编译并由 NETFramework资源管理器管理的资源文件中的值 A 隐式本地化B 显式本地化C 以编程方式D 以上都是
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!