问题描述
stringstrCartID;if(HttpContext.Current.User.Identity.IsAuthenticated){HttpContext.Current.Response.Cookies["CartID"].Value=Session["UserID"].ToString();strCartID=HttpContext.Current.Request.Cookies["CartID"].Value;}elseif(HttpContext.Current.Request.Cookies["CartID"].Value!=null){strCartID=HttpContext.Current.Request.Cookies["CartID"].Value.ToString();}else{//产生一个ID作为购物车IDGuidCartID=Guid.NewGuid();//Session["CartID"]=CartID.ToString();HttpContext.Current.Response.Cookies["CartID"].Value=CartID.ToString();strCartID=HttpContext.Current.Request.Cookies["CartID"].Value;}如果在主页输入用户名和密码这个不会出错如果不输入以游客的身份游览执行之后elseif(HttpContext.Current.Request.Cookies["CartID"].Value!=null)这句报错Cookies["CartID"]为初始化因为我在主页里面判断用户名和密码是否正确的时候才初始化了Cookies["CartID"]如果是游客判断用户名和密码的这段代码没有执行报未初始化我就是搞不懂怎么初始化Cookies["CartID"]什么时候初始化Cookies["CartID"]?请各位帮帮小弟谢谢各位大哥了
解决方案
解决方案二:
1.把null换成string.empty2.HttpContext.Current.Request.Cookies["CartID"].Value!=null)把value去掉