AjaxASP.NET——基础 4、NetSession

 
1、每次要来了,都见面new一个初的落实了IHttpHandle接口的好像页面的实例,进行拍卖。用了便GC掉,所以 不见面保持上次的值。即访问者访问的是不同i的实例。
private int i=0;
i++;
2、所有的访问者都看的以及一个j的实例,即可实现全局变量。
private static int j=0;
j++;

 

3、Session原理,自己过去轮子
  • 因此IDictionary<string,IDictionary<string,object>>来囤积素有的大多独登陆用户之数据

    IDictionary> data=new Dictionary>();
    if(data.ContainsKey(sessionID))
    {

    return data[sessionID];
    

    }
    else
    {

    IDictionary<string,object> session=new Dictionary<string,object>();
    data[sessionID]=session;
    return session;
    

    }

  • 历次读取客户端提交来之Cookie,若觉察Cookie中无SessionID:(Key),给客户端生成一个Guid,把Guid写副客户端Cookie,来标示身份。

  • 以劳务端生成一个Guid对应的器皿,容器里放多个Key-Value。
  • 获之上,读客户端提交来的Cookie中的Guid,找到该以服务器对应之容器。
4、Session有过。(应用Ajax每隔十分钟骚扰下服务器,告诉服务器自己还健在在。)需要定时销毁。
5、ASP.NET内置有Session,内置Session的ID自动分配,只用复制与取值。在Cookie中叫做ASP.NET_SessionId。
6、Session不能够推广尽老之多少,格式是object

相关文章