• asp.net cookies用法


    比如建立一个名为aspcn,值为灌水小鱼的cookie

    HttpCookie cookie = new HttpCookie["aspcn"];
    cookie.Value = "灌水小鱼";
    Response.AppendCookie(cookie);

    取出Cookie值也很简单

    HttpCookie cookie = Request.Cookies["aspcn"];
    cookieValue = cookie.Value;

    在一个Cookie中储存多个信息,那也没有问题。比如在名为aspcn的cookie下加多个信息

    HttpCookie cookie = new HttpCookie("aspcn");
    cookie.Values.Add("webmaster","灌水小鱼");
    cookie.Values.Add("writer","beige");
    cookie.Values.Add("LinkColor","blue");
    Response.AppendCookie(cookie);

    取出信息也一样简单

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

    Request.Cookies.Clear()这个方法并不是删除Cookie
    删除 Cookie(即从用户的硬盘中物理移除 Cookie)是修改 Cookie 的一种形式。
    由于 Cookie 在用户的计算机中,因此无法将其直接移除。
    但是,可以让浏览器来为您删除 Cookie。
    该技术是创建一个与要删除的 Cookie 同名的新 Cookie,
    并将该 Cookie 的到期日期设置为早于当前日期的某个日期。
    当浏览器检查 Cookie 的到期日期时,浏览器便会丢弃这个现已过期的 Cookie。
    下面的代码示例演示删除应用程序中所有可用 Cookie 的一种方法:

    CODE:

    1. HttpCookie aCookie;
    2. string cookieName;
    3. int limit = Request.Cookies.Count;
    4. for (int i = 0; i < limit; i++)
    5. {
    6. cookieName = Request.Cookies[i].Name;
    7. aCookie = new HttpCookie(cookieName);
    8. aCookie.Expires = DateTime.Now.AddDays(-1);
    9. Response.Cookies.Add(aCookie);
    10. }

    cookies过期时间

    Response.Cookies("user_name").Expires=Date+1 ’指定cookie保存时间

    保留COOKIES一个小时
    Response.Cookies("MyCookie").Expires= (now()+1/24)

    Response.Cookies("MyCookie").Expires = DateAdd("h", 1, Now())


    Response.Cookies("CookieName").Expires=DateAdd("m",60,now())
    设置60个月以后过期

    Response.Cookies("User").expires=second()+7
    在expires后面定义的时间可以用时间函数代替
    例如:date()+7就表示在今天的时间上加上7天,而second()+7则是7秒了。

    Response.Cookies("字段名").expires=时间函数+N,例如:
    Response.Cookies("name2").expires=date+1,表示Cookies保存1天,再比如:
    Response.Cookies("name2").expires=Hour+8,表示Cookies保存8小时。
    这种方法我测试过不行(在2003server,iis6.0中),不管second后面有无加(),访问时会出现500错误(还是无法显示网页?忘了)。


    织梦尤文:这里的时间累加建议还是使用DateAdd函数,比如我们要累加一小时,则使用:
    Response.Cookies("baidooglecom").expires = DateAdd("h", 1, Now())

    30分钟:
    Response.Cookies("CookieName").Expires=DateAdd("n",30,now())

    dateadd("S",30,now()) 得到秒


    Expires 指定 cookie 的过期日期。为了在会话结束后将 cookie 存储在客户端磁盘上,或在许多时候,我们希望能更长时间地在访问者的计算机上保存cookie。必须设置该日期。
    若此项属性的设置未超过当前日期,则在任务结束后 cookie 将到期。
    cookie的使用到期时间为“2010年1月1日”: Response.Cookies("CookieName").Expires=#January 01, 2010#
    cookie的过期时间为“cookie的创建时间+365天”:Response.Cookies("CookieName").Expires=Date+365 推荐的
    但最好不要随便写 Response.Cookies("CookieName").Expires=Date,这样页面之间的调用时值会为空。

    C# :

    方法1:
    Response.Cookies["username"].Value="gjy";
    Response.Cookies["username"].Expires=DateTime.Now.AddDays(1);

    方法2:
    System.Web.HttpCookie newcookie=new HttpCookie("username");
    newcookie.Value="gjy";
    newcookie.Expires=DateTime.Now.AddDays(1);
    Response.AppendCookie(newcookie);


    创建带有子键的cookies:
    System.Web.HttpCookie newcookie=new HttpCookie("user");
    newcookie.Values["username"]="gjy";
    newcookie.Values["password"]="111";
    newcookie.Expires=DateTime.Now.AddDays(1);
    Response.AppendCookie(newcookie);



    cookies的读取:

    无子键读取:
    if(Request.Cookies["username"]!=null)
    {
    Response.Write(Server.HtmlEncode(Request.Cookies["username"].Value));
    }

    有子键读取:
    if(Request.Cookies["user"]!=null)
    {
    Response.Write(Server.HtmlEncode(Request.Cookies["user"]["username"].Value));

  • 相关阅读:
    c#文件读取
    asp.net页面缓存学习
    JQuery学习
    如何在asp.net后台调用前台代码
    c#文件操作二
    oracler主键自动增长
    C#委托学习
    小技巧:DIV中显示字符不完整的解决方法
    英文名字的误区及起名方法
    SharePoint 2010 中提供的母版页
  • 原文地址:https://www.cnblogs.com/tianxiang2046/p/2480976.html
Copyright © 2020-2023  润新知