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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 自建DDNS教程【阿里云 AliDDNS 2.0】「建议收藏」

    自建DDNS教程【阿里云 AliDDNS 2.0】「建议收藏」搭建DDNS

    2022年5月2日
  • if过多如何重构_多个else if用法

    if过多如何重构_多个else if用法介绍最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的if(msgType=”文本”){ //dosomething}elseif(msgType=”图片”){ //doshomething}elseif(msgType=”视频”){ //doshomething}else{ //doshom………

    2022年10月3日
  • unity3d吧_unity3d从入门到精通

    unity3d吧_unity3d从入门到精通2-62-72-82-92-103-33-43-5

    2022年9月2日
  • windows 10下无法安装.NET Framework 3.5

    windows 10下无法安装.NET Framework 3.5解决方案:win键+R,输入services.msc,“确定”打开服务,在右侧列表里找到“WindowsUpdate”双击打开后点击“启动”(若按钮灰色则把“启动类型”中的“禁用”改为“自动”)即可。(.NETFramework安装完成后如果你想继续关闭windowsupdate就继续把前面说的服务“停止”后“禁用”。)转载于:https://www.cnblogs…

    2022年6月1日
  • 应用多开,定位,机型伪装这都有

    应用多开,定位,机型伪装这都有这几天总有粉丝在后台问分身的软件,而之前的给大家介绍的基本上都失效了,所以今天给大家再重新整理一下分身的软件我们手机上一般都自带多开,但只能开一个·,所以给大家带来的软件支持多开而且支持虚拟定位机型伪装(又可以装X了)电脑模拟器一般的模拟器都有多开的功能,这里我给大家推荐一下我在用的模拟器—逍遥模拟器其它的模拟器也很好用,关于模拟器过以后再给大家推荐几款的沙盘文章里有详细介绍:htt…

    2022年5月27日
  • dropout和bagging_dropout总结「建议收藏」

    dropout和bagging_dropout总结「建议收藏」1.伯努利分布:伯努利分布亦称“零一分布”、“两点分布”。称随机变量X有伯努利分布,参数为p(02.dropout其实也是一种正则化,因为也把参数变稀疏(l1,原论文)和变小(l2,caffe实际实现)。只有极少的训练样本可用时,Dropout不会很有效。因为Dropout是一个正则化技术,它减少了模型的有效容量。为了抵消这种影响,我们必须增大模型规模。不出意外的话,使用Dropout时较佳…

    2022年5月4日

发表回复

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

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