.NET 双语(多语言、中英文)网站建设方法
来源:互联网 发布:php个人怎么接私活 编辑:程序博客网 时间:2024/05/16 08:23
其他参考资源:
http://apps.hi.baidu.com/share/detail/226875
http://hi.baidu.com/jiangbo_301/blog/item/9ec3b4244bc7fc0d4d088d3b.html
http://www.cnblogs.com/ceniy/articles/1007212.html
http://topic.csdn.net/u/20090920/16/ECF12395-4F9E-487B-9E4B-6FEA08FF8F38.html
转载地址:http://blog.csdn.net/kaigood/article/details/1780478
首先定义一个执行中英文转换的类
using System;using System.Reflection;using System.Resources;using System.Text;using System.Diagnostics;namespace CommonClass{ /// <summary> /// ResourcesCollection 的摘要说明。 /// </summary> public class ResourcesCollection { private ResourceManager resourceManager; /// <summary> /// Constructs an instance using the specified Assembly. /// </summary> /// <param name="assembly">The Assembly to be used.</param> public ResourcesCollection(string defaultLanguage,Assembly assembly) { resourceManager = new ResourceManager( assembly.GetName().Name + "." + defaultLanguage, assembly); } /// <summary> /// 根据此属性从资源文件中读取信息 /// </summary> public string this[string name] { get { return resourceManager.GetString(name); } } }}
再定义一个Page的基类
using System;using System.Text;using System.Globalization;using System.Reflection;using System.Web;using System.Web.UI;using CommonClass;public class PageBase : System.Web.UI.Page{ protected static string strDefaultLanguage; protected static ResourcesCollection resources; /// <summary> /// 重载 Oninit 方法 /// </summary> /// <param name="e"></param> protected override void OnInit(EventArgs e) { base.OnInit (e); // 根据不同的语言读取不同的资源文件。 resources = new ResourcesCollection( GetDefaultLanguage(),Assembly.GetExecutingAssembly()); // 设置当前请求的原始Url strRawUrl = GetRawUrl(); //检查页面的权限 //Common.CheckAuthority(this,Request); } /// <summary> /// 定义一个属性用于页面调用资源文件 该属性是静态属性 /// </summary> public static ResourcesCollection Resources { get { return resources; } } /// <summary> /// 判断默认语言。 /// </summary> /// <returns></returns> protected string GetDefaultLanguage() { //判断Session 中默认语言的设置。 if(Session["DEFAULTLANGUAGE"] != null) { strDefaultLanguage = Session["DEFAULTLANGUAGE"].ToString(); } else { // 取得用户浏览器默认语言。 string strLanguage = Request.UserLanguages[0]; // 如果默认语言的前两个字符为“en”则为英语。 if(strLanguage.Substring(0, 2).Equals("en")) { strDefaultLanguage = "en"; } else { // 如果前两个字符不为“en”则设置默认语言为中文。 strDefaultLanguage = "zh-cn"; } // 将默认语言值写入Session 。 Session["DEFAULTLANGUAGE"] = strDefaultLanguage; } return strDefaultLanguage; }}
然后在页面中 页面继承PageBase 类 请注意引用资源文件的方式
// 引用资源文件
lblTitle.Text = Resources["ModuleName27"];
lblRoleNume.Text = Resources["RoleName"];
lblRemark.Text = Resources["Remark"];
btnAdd.Text = Resources["Add"];
注:省略了刚进系统时的用户自定义的资源文件引用的判断Session["DEFAULTLANGUAGE"],读者可自行加上
- .NET 双语(多语言、中英文)网站建设方法
- 双语真理(中英文对照)
- 开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo
- 开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo
- 开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo
- 开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo
- dedecms织梦做中英文(多语言)网站详解
- dedecms织梦做中英文(多语言)网站详解
- .net 网站中英文切换
- 网站自动识别浏览器语言进行中英文切换的方法
- RFC双语计划:rfc2516中文版(中英文对照)............在以太网上传输PPP的方法(PPPoE)
- 网站建设方法
- "开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo"项目分析
- 静态网站的中英文等多语言切换
- ASP.NET网站实现中英文转换(本地化资源)
- ASP.NET网站实现中英文转换(本地化资源)
- ASP.NET网站实现中英文转换(本地化资源)
- ASP.NET网站实现中英文转换(本地化资源)
- Android开发必备的21个免费资源和工具(2)
- JQuery事件----冒泡机制的思考
- 清除所有用户的历史命令
- UTF-8
- 时间正则(yyyy-MM-dd)
- .NET 双语(多语言、中英文)网站建设方法
- proxool配置详解
- 使用Assembly来开发c#程序
- Android开发必备的21个免费资源和工具(3)
- PowerManager简介
- pdf转swf中文乱码问题解决
- Mongodb与spring集成(3)------MongoRepository实现增删改查和复杂查询
- Android开发必备的21个免费资源和工具(4)
- c# 32位机和64位机 读取Excel内容到DataSet