如何解决在MVC中访问Cookie值
这是我第二次令人沮丧的cookie研究。在我的MVC项目中,我试图在用户登录时创建具有多个值的cookie。在我的控制器中,该cookie看起来不错并且具有两个测试值,但是当我尝试在视图中访问同一cookie时,该cookie存在,但没有值。我知道这是一件很基本的事情,我已经查看了Microsoft文档,但无法弄清楚自己在做什么错。任何帮助将不胜感激。
这是我的登录方法的一部分:
case SignInStatus.Success:
HttpCookie progressCookie = Request.Cookies["Computer Basics Course"];
// remove the cookie for testing purposes
Response.Cookies.Remove("Computer Basics Course");
if (progressCookie == null)
{
progressCookie = new HttpCookie("Computer Basics Course");
progressCookie.Values["TotalDuration"] = "3";
progressCookie.Values["TotalPages"] = "875";
}
progressCookie.Expires = DateTime.Now.AddDays(7d);
Response.Cookies.Add(progressCookie);
return RedirectToAction("LoginRoute");
在断点期间将鼠标悬停在此cookie上具有子键
这是我的视图Cookie代码:
@{
HttpCookie progressCookie = Response.Cookies["Computer Basics Course"];
var totalPages = progressCookie["TotalPages"];
var intTotalPages = Convert.ToInt32(totalPages);
var courseProgress = Model.PageNumber / intTotalPages;
}
这是我收到错误的地方,其中存在cookie,但没有值,因此程序尝试除以0,因为TotalPages为null。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。