Session和Cookie的使用

1.Session声明和赋值

Session具有以下特点: 
(1)Session中的数据保存在服务器端; 
(2)Session中可以保存任意类型的数据; 
(2)Session默认的生命周期是20分钟,可以手动设置更长或更短的时间。
存入字符串:
HttpContext.Current.Session["AdminName"]="111";
这样取值:
string str = HttpContext.Current.Session["AdminName"].ToString();

获取session时一般这么写:string username=session[“username”],但是在给对象赋值的时候我们需要注意两点
1:判断是否为null
2:类型的转换

if (Session["AdminName"] != null)
  {
    string username=Session[“AdminName”] 
  }

释放方式:清除某个Session

Session["AdminName"] = null;

清除全部Session

Session.removeAll();

2.CooKie声明和赋值

1 设置Cookie

1.1、设置单个内容
DateTime dt=DateTime.Now;
TimeSpan ts = new TimeSpan(0, 0, 1,0,0);//过期时间为1分钟

System.Web.HttpCookie cookie=new  System.Web.HttpCookie("MyCook");//初使化并设置Cookie的名称
cookie.Expires = dt.Add(ts);//设置过期时间
cookie.Value= “userid”;//设置内容
System.Web.HttpContext.Current.Response.Cookies.Add(cookie);    //添加到Cookie中

//获取单个MyCook中的内容
HttpContext.Current.Request.Cookies["MyCook"].Value

1.2、设置一个Cookie中添加多个内容
HttpCookie cookie=new HttpCookie("MyCook");//初使化并设置Cookie的名称
DateTime dt=DateTime.Now;
TimeSpan ts = new TimeSpan(0, 0, 1,0,0);//过期时间为1分钟
cookie.Expires = dt.Add(ts);//设置过期时间
cookie.Values.Add("userid", "userid_value");
cookie.Values.Add("userid2","userid2_value2");
Response.AppendCookie(cookie);
//输出该Cookie的所有内容
//Response.Write(cookie.Value);//输出为:userid=userid_value&userid2=userid2_value2 

2 获取Cookie
if (Request.Cookies["MyCook"]!=null)
{
//Response.Write("Cookie中键值为userid的值:" + Request.Cookies["MyCook"]["userid"]);//整行
//Response.Write("Cookie中键值为userid2的值" + Request.Cookies["MyCook"]["userid2"]);
Response.Write(Request.Cookies["MyCook"].Value);//输出全部的值
}

3 修改Cookie

//获取客户端的Cookie对象
HttpCookie cok = Request.Cookies["MyCook"];
if (cok != null)
{
    //修改Cookie的两种方法
    cok.Values["userid"] = "alter-value";
    cok.Values.Set("userid", "alter-value");

    //往Cookie里加入新的内容
    cok.Values.Set("newid", "newValue");
    Response.AppendCookie(cok);
}      

4 删除Cookie
 HttpCookie cok = Request.Cookies["MyCook"];
 if (cok != null)
    {
     cok.Values.Remove("userid");//移除键值为userid的值 
     或者
      cok.Expires = DateTime.Now.AddDays(-1);
      HttpContext.Current.Response.Cookies.Add(cok);
    
    }

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值