asp.net(c#) Cookie 实现

做了个网站的登陆,开始的时候用的是session ,但是session 丢失数据问题严重,就一秒钟,数据马上就没了 ,真是很头同。找了很多文章,一直没解决的办法,因为用的Access 数据库,都说在web.config中配置一下,但是依旧不省事,用听朋友说一session安全系数低,一般情况下不用,只好改用Cookie 了 ,在CSDN 上搜了一搜,整理了一下:

写入Cookie
HttpCookie cookie = new HttpCookie["UserSettings"];
cookie.Value = "管理员";
Response.AppendCookie(cookie);

我们取出Cookie值

HttpCookie cookie = Request.Cookies["UserSettings"];
cookieValue = cookie.Value;
有时候我们想在一个Cookie中储存多个信息,那也没有问题。比如我们在名为UserSettings的cookie下加多个信息
HttpCookie cookie = new HttpCookie("UserSettings");
cookie.Values.Add("webmaster","管理员");
cookie.Values.Add("writer","beige");
cookie.Values.Add("LinkColor","blue");
Response.AppendCookie(cookie);

读取 Cookie
HttpCookie cookie = Request.Cookies["aspcn"];
value1 = cookies.Values["webmaster"];
value2 = cookies.Values["writer"];

删除 Cookie

不能直接删除用户计算机中的 Cookie。但是,可以通过将 Cookie 的到期日期设置为过去的日期,让用户的浏览器来删除 Cookie。当用户下一次向设置该 Cookie 的域或路径内的页发出请求时,浏览器将确定该 Cookie 已到期并将其移除。

if (Request.Cookies["UserSettings"] != null)
{
    HttpCookie myCookie = new HttpCookie("UserSettings");
    myCookie.Expires = DateTime.Now.AddDays(-1d);
    Response.Cookies.Add(myCookie);
}

 

posted @ 2009-04-01 11:52  Steven2  阅读(284)  评论(0编辑  收藏  举报