当前位置:编程学习 > asp >>

ASP.net Session原理

1.创建SessionMgr类

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
 
/// <summary> 
///SessionMgr 的摘要说明 
/// </summary> 
public class SessionMgr 

 
   
    private static IDictionary<string, IDictionary<string, object>> data = new Dictionary<string, IDictionary<string, object>>(); 
    public static IDictionary<string, object> GetSession(string sessionId) 
    { 
        if (data.ContainsKey(sessionId)) 
        { 
            return data[sessionId]; 
        } 
        else 
        { 
            IDictionary<string, object> session = new Dictionary<string, object>(); 
            data[sessionId] = session; 
            return session; 
        } 
    } 
 
    public static IDictionary<string, object> GetSession() 
    { 
        throw new NotImplementedException(); 
    } 
 

2.页面读取服务端Session


using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
 
public partial class sessionweb : System.Web.UI.Page 

    protected void Page_Load(object sender, EventArgs e) 
    { 
        if (Request.Cookies["MySessionId"] == null) 
        { 
           string sessionId = Guid.NewGuid().ToString(); 
            Response.SetCookie(new HttpCookie ("MySessionId",sessionId )); 
        } 
    } 
    protected void Button1_Click(object sender, EventArgs e) 
    { 
        string sessionId = Request.Cookies["MySessionId"].Value; 
        IDictionary <string ,object > session= SessionMgr.GetSession(sessionId ); 
        session["服务端"] = "333"; 
    } 
    protected void Button2_Click(object sender, EventArgs e) 
    { 
        string sessionId = Request.Cookies["MySessionId"].Value; 
        IDictionary<string, object> session = SessionMgr.GetSession(sessionId ); 
       Button2 .Text  = Convert.ToString(session ["服务端"]); 
    } 


摘自 编程爱好者
补充:Web开发 , ASP.Net ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,