asp.net 不能写入Cookie的解决方法
asp.net Cookie Cookies 写入
本文谬误!之所以读不到Cookies,是因为设置了Domain的值,而在本地测试的Domain跟设置的值不同!
请看下面一段创建Cookie的c#代码:
代码如下
-
HttpCookie myCookie = new HttpCookie("UserSettings");
-
myCookie["Font"] = "Arial";
-
myCookie["Color"] = "Blue";
-
myCookie.Expires = DateTime.Now.AddDays(1d);
-
Response.Cookies.Add(myCookie);
这段代码没有一点问题,因为是从MSDN的Cookie示例复制过来的。但是有时候,这么标准的代码就是不能正常运作,你获取到的Request.Cookies["UserSettings"]==null!为什么呢?请看稍微改动过的代码:
代码如下
-
HttpCookie myCookie = Request.Cookies["UserSettings"];
-
if(myCookie == null)
-
myCookie = new HttpCookie("UserSettings");
-
myCookie["Font"] = "Arial";
-
myCookie["Color"] = "Blue";
-
myCookie.Expires = DateTime.Now.AddDays(1d);
-
Response.Cookies.Add(myCookie);
这段代码就可以正常写入Cookies了。为什么?难道说,微软为了提醒我们Cookies是保存在客户端的,所以要先从客户端获取?我们迫<
相关经验
- asp.net:在using语句中使用return语句!
- asp.net中 UrlEncode 的编码问题
- asp.net 设计模式之——单例模式
- Asp.net 2.0 关于Header/title/Meta tages/Style操作的一点小技巧
- templateEngine2 asp.net 开源模板引擎
- asp.net中的缓存机制(一):页面缓存
- 没有对“C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files”的写访问权限
- params关键字:参数数目可变
- 开源的asp.net wiki系统
- ASP.Net中的HttpHandler,自定义Http处理及应用的原理和实现方法