高手来看下,Cookie初级问题,存个 Response.Cookies["name"].Value = name;关闭浏览器,下次再打开,取不到这个值。
代码很简单,就下面,关闭浏览器下次再运行,cookie里没值。这样我是没办法保存用户名的。请问怎么回事
public partial class CookTest : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string name;
if (Response.Cookies["name"] != null && Response.Cookies["name"].Value!=null)
name = Response.Cookies["name"].Value;
else{
name = "Jonh";
Response.Cookies["name"].Expires.AddDays(30);
Response.Cookies["name"].Value = name;
}
Response.Write(name);
}
}
------解决方案--------------------Response.Cookies["name"].Expires.AddDays(30);
这里写的不对
应该是
Response.Cookies["name"].Expires = DateTime.Today.AddDays(30);
另外
获取coockie不应该用Response,应该用Request
if (
Request.Cookies["name"] != null &&
Request.Cookies["name"].Value!=null)
------解决方案-------------------- if (Response.Cookies["name"] != null && Response.Cookies["name"].Value!=null)
这里改为Request.Cookies就可以了。