在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
网站开发中,为了保存用户的信息,有时候需要使用session。如果我们在aspx页面中使用Session,只需要Session["key"]=value就可以,获取时使用int userid=Session["userid"],但是在赋值时,我们可能需要判断Session是否为空,是否能转换成int类型。如果只在一处使用Session,那么我们可以直接在aspx页面中操作,修改也只需修改一处。 但在操作Session时,可能会在多个页面,如果修改Session,可能需要修改多个页面,这样会非常的繁琐。解决的办法主要有两个,一个是基类页面,添加一个基类页面,页面继承自System.Web.UI.Page,在基类页面中处理Session。其它的涉及Session操作的继承自基类页面。二是使用类,如果在asp.net项目中使用类,只需要引用 using System.Web; using System.Web.SessionState; 然后定义 private static HttpSessionState _session = HttpContext.Current.Session; 就可以通过_session操作Session了。 本文主要介绍第二种方式,而且是使用类库操作Session的方法。 1.新建一个类库 2.添加引用,解决方案资源管理器中,右键“引用”-》“添加引用”-》.net-》选择“System.Web”-》点击“确定” 3.添加一个类,在类中引用 using System.Web; using System.Web.SessionState; 4.操作Session,主要涉及添加,获取,清除。其它的如修改、删除也可添加。主要代码如下: private static HttpSessionState _session = HttpContext.Current.Session; public static void SetSession(string key,object value) { _session[key] = value; } public static int GetSessionNumber(string key) { int result = 0; if(_session[key]!=null) { int.TryParse(_session[key].ToString(), out result); } return result; } public static string GetSessionString(string key) { string result = ""; if(_session[key]!=null) { result = _session[key].ToString(); } return result; } public static void Clear() { _session.Clear(); } 转自:http://www.1100w.com/c%E7%B1%BB%E5%BA%93%E4%B8%AD%E4%BD%BF%E7%94%A8session/ 关键代码: private static HttpSessionState _session = HttpContext.Current.Session; 原理呢? |
请发表评论