当有人来到网站并且没有cookie时,我想要显示视频。在他们看到视频后,会添加一个Cookie,但是当Cookie过期时,视频会再次播放。
if (Request.Cookies["x"] != null)
{
//do nothing
}
else
{
ModalPopupExtender1.Show();
Response.Cookies["x"].Value = DateTime.Now.ToString();
Response.Cookies["x"].Expires = DateTime.Now.AddHours(24);
}
我认为这样可以正常工作,但是电影只显示浏览器是否清除了所有cookie。 24小时后,电影将无法播放。
我该如何解决这个问题?
答案 0 :(得分:1)
您应该检查cookie是否为空且是否已过期。显然,cookie仍然在用户的浏览器上,但过期并且什么都不做。
if (Request.Cookies["x"] != null && Convert.ToDateTime(Request.Cookies["x"].Expires) > DateTime.Now)
{
// do nothing
}
else
{
// your other code
}
答案 1 :(得分:0)
if (Request.Cookies["x"] != null && Convert.ToDateTime(Request.Cookies["x"].Expires) < DateTime.Now)
{
//do nothing
}
else
{
ModalPopupExtender1.Show();
Response.Cookies["x"].Value = DateTime.Now.ToString();
Response.Cookies["x"].Expires = DateTime.Now.AddHours(24);
}
他是对的,但逻辑有点不对。