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 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题