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不是已经写入客户端的了吗?为什么还是没有数据读取出来.....

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


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

Expires 没设置,然后保险起见,Add方法Set方法都调用次

既然你加了实效了,我建议你看看你的浏览器是不是设置了关闭自动清除cookie,或者你可以把网站发布出来,然后用iis搭建后,用其他浏览器访问,看看cookie有没有保存下来。