FunctionTwo 2015-04-25 10:32 采纳率: 0%
浏览 3845

C# Cookies消失问题!!!!

    //st1为判断数据,此处就不写前面的了,为数据库读取出来的数据,string类型,在此说明一下即可
    string cst=Session.SessionID;
    string stID=txtBox1.Text;
    if (st1 == "")
        {
            SqlCommand sqlcom1 = new SqlCommand();
            sqlcom1.Connection = sqlconn;
            sqlcom1.CommandText = "UPDATE [dbo].[R_Users]  SET   [Computer1] ='" + cst + "' WHERE UserID=" + (int)dr["UserID"];
            sqlcom1.ExecuteNonQuery();

            HttpCookie myCook = new HttpCookie("Computer1" + stID);
            myCook.Value = cst;
            Response.Cookies.Add(myCook);

            logintype = 1;
        }
        else
        {
            var thhisComputer1 = HttpContext.Current.Request.Cookies["Computer1" + stID].Value;
            Response.Write(thhisComputer1);

        }

代码如上,当我的st1为空的时候,我为数据库里面的st1添加一个cookies数据cst,保存起来,并添加cookies["Computer1"+stID],保存在客户端,
问题来了!第二次我打开网页的时候再次判断这个st1是否为空的时候,st1是不为空的(数据库读取出来已经),读取cookies["Computer1"+stID],显示的是:未将对象引用设置到实例化。
求助!!!!
cookies不是已经写入客户端的了吗?为什么还是没有数据读取出来.....

  • 写回答

3条回答 默认 最新

  • Go 旅城通票 2015-04-25 12:13
    关注

    你生成的是内存cookie,浏览器关闭就销毁了,要加有效期

    
                HttpCookie myCook = new HttpCookie("Computer1" + stID);
                 myCook.Expires = DateTime.Now.AddYears(1);//有效期1年,1年内cookie可以访问,除非浏览器清除过cookie
                myCook.Value = cst;
                Response.Cookies.Add(myCook);
    
    评论

报告相同问题?

悬赏问题

  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥30 用arduino开发esp32控制ps2手柄一直报错
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题
  • ¥20 求一个html代码,有偿