这个if一定是返回true吗?

来源:百度知道 编辑:UC知道 时间:2024/05/28 01:46:08
HttpCookie co = HttpContext.Current.Request.Cookies["jhUser"];
if (co == null) return null;

if (co["rd"] != Md5(co["id"]))
------------------------------------------------------
我搞不懂的地方就是:我认为
if (co["rd"] != Md5(co["id"]))这一句应该始终返回true
但实际上,有Cookies的时候,它是返回false的,所以搞不懂。。。。
Cookies里面的rd是这样的:rd=4CEFE7C7083CF416B7D3CF7BD5CB8153localhost/102436255063042999527621729089629995274*
自己看错了,晕死,co["rd"]和co["id"]是不一样的。真是看走眼了。

那是因为你存进cookie的值是一个对象的形式,
所以你取出来以后要进行类型转换

你用HttpCookie存取出来的值,当然就不会取到了,你可以转换:
Users co = (Users)HttpContext.Current.Request.Cookies["jhUser"]; //Users是你开始放进去的一个对象

然后从co中以对象的方式取值再进行比较