Session在类库中的使用
轉自:http://www.cnblogs.com/JiangXiaoTian/articles/3490904.html
?
網站開發中,為了保存用戶的信息,有時候需要使用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.添加一個類,在類中引用
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(); }?注釋:session有效時間默認為20分鐘,內容來自中國站長資訊網(www.chinahtml.com)這個時間是指,當用戶登錄后,如果沒有任何動作,即不在web上有請求.將維持這個用戶的身份有效時間是20分鐘,如果這個用戶一直與web有請求操作,那么,這個時間一直沒有算在20分鐘內,即,如果用戶登錄后,即便操作一個小時,那么也不會出現超時,除非用戶與服務器之間掉線。
Session對象默認失效期為20分鐘,用戶也可以在Web.Config中對其進行設置。
配置Web.Config文件的方法如下:
??????在Web.Config文件的<system.web></system.web>節點中添加如下代碼,設置Session的生命周期為10分鐘。
轉載于:https://www.cnblogs.com/huangshuqiang/p/6101938.html
總結
以上是生活随笔為你收集整理的Session在类库中的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ASP.NET Core中如影随形的”依
- 下一篇: SqlHelper简单实现(通过Expr