ASP.net Session原理「建议收藏」

ASP.net Session原理「建议收藏」1.创建SessionMgr类usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Web;//////SessionMgr的摘要说明///publicclassSessionMgr{privatestaticIDiction

大家好,又见面了,我是你们的朋友全栈君。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 ["服务端"]);
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159547.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月15日 下午6:16
下一篇 2022年7月15日 下午6:36


相关推荐

  • 静默安装失败是什么意思_静默安装命令

    静默安装失败是什么意思_静默安装命令静默安装Oracle Database 18c

    2022年4月21日
    217
  • 我扫描了1000+个提示词,省去你们的麻烦:10个你需要知道的技巧

    我扫描了1000+个提示词,省去你们的麻烦:10个你需要知道的技巧

    2026年3月14日
    1
  • int32_t是什么数据类型_int32_t什么意思

    int32_t是什么数据类型_int32_t什么意思个人理解*_t中的t可以理解为typedefine。由于各个平台中对基本数据的大小定义不一样,为了兼容各个平台,C语言利用预编译和typedef可以让你最有效的维护你的代码。其实这些都不是新的数据类型,为了用户的方便,C99标准的C语言硬件为我们定义了这些类型,我们放心使用。如:int32_t其实就是32位int类型数据。附:C99标准中inttypes.h的内容000010001700…

    2026年1月30日
    4
  • socket通讯原理及例程(一看就懂)

    socket通讯原理及例程(一看就懂)对TCP/IP、UDP、Socket编程这些词你不会很陌生吧?随着网络技术的发展,这些词充斥着我们的耳朵。那么我想问:什么是TCP/IP、UDP?Socket在哪里呢?Socket是什么呢?你会使用它们吗?什么是TCP/IP、UDP?TCP/IP(TransmissionControlProtocol/InternetProtocol)即传输控制协议/网间协议…

    2022年7月14日
    16
  • java的守护线程和非守护线程区别_java守护线程应用场景

    java的守护线程和非守护线程区别_java守护线程应用场景一、守护线程    java分为两种线程:用户线程和守护线程    守护线程是指在程序运行的时候在后台提供一种通用服务的线程,比如垃圾回收线程就是一个很称职的守护者,并且这种线程并不属于程序中不可或缺的部分。因此,当所有的非守护线程结束时,程序也就终止了,同时会杀死进程中的所有守护线程。反过来说,只要任何非守护线程还在运行,程序就不会终止。    守护线程和用户…

    2022年10月15日
    4
  • 如何在mac上安装虚拟机搭载Windows「建议收藏」

    如何在mac上安装虚拟机搭载Windows「建议收藏」一、下载虚拟机官方下载网址https://www.vmware.com/二、下载想要安装的Windows版本推荐下载网址https://msdn.itellyou.cn/(msdn建议收藏,相当全的系统)直接将地址复制到迅雷下载即可三、双击下载完成的vm虚拟机,拖到app中如果VM提示找不到可以连接的有效对等进程:…

    2025年11月6日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号