Cookie没有在asp.net mvc中设置

时间:2013-03-25 17:30:59

标签: c# asp.net asp.net-mvc cookies

if (HttpContext.Request.Cookies["time"]==null)
{
    HttpCookie cookie = new HttpCookie("last_visited",DateTime.Now.ToString());
    cookie.Expires = DateTime.Now.AddDays(10);
    HttpContext.Response.Cookies.Add(cookie);
}
else if(HttpContext.Request.Cookies["last_visited"]!=null)
{
    ViewBag.last_visited = HttpContext.Request.Cookies["last_visited"].Value;
}

我正在尝试在asp.net mvc中设置一个cookie。以上是我在控制器操作中的代码。此代码的目的是在没有cookie时设置cookie,如果有cookie集则读取值。

然而,在设置了断点之后我发现了else,如果部分永远不会被执行,就好像根本没有设置cookie一样。

这里有什么问题?

1 个答案:

答案 0 :(得分:2)

第一个if语句是否检查错误的cookie? "time"应该是"last_visited"吗?

固定代码:

if (HttpContext.Request.Cookies["last_visited"]==null)
{
    HttpCookie cookie = new HttpCookie("last_visited",DateTime.Now.ToString());
    cookie.Expires = DateTime.Now.AddDays(10);
    HttpContext.Response.Cookies.Add(cookie);
}
else if(HttpContext.Request.Cookies["last_visited"]!=null)
{
    ViewBag.last_visited = HttpContext.Request.Cookies["last_visited"].Value;
}