.net中的session与cookies区别及使用方法
2024-07-10 12:45:53
供稿:网友
先介绍一下比较简单的使用方法:
给COOKIES赋值
代码如下:
Response.Cookies["uid"].Value = "20";
Response.Cookies["LoginCode"].Value = "58469";
以上就是分别对两个COOKIES变量赋了两个不同的传,那么在使用COOKIES时,我们怎样来控制COOKIES的有效期呢,看下面:
代码如下:
Response.Cookies["uid"].Expires = DateTime.Now.AddDays(1);
Response.Cookies["LoginCode"].Expires = DateTime.Now.AddDays(1);
上面是分别对两个变量的有效期的1天,当然也是几小时,方法如下:
代码如下:
Response.Cookies["LoginCode"].Expires =DateTime.Now.AddHours(1);
这是有效期为1小时,同样的方法可以类推成几分钟,几秒等等。
那我们如何获得这些COOKIES的值呢?这里要注意一点,在COOKIES没有被赋值时,你要调用就会出错,所以我们一般在调用之前会先判断一下,此COOKIES是否存在,方法:
代码如下:
if (Request.Cookies["uid"] != null)
{
string ruid = Request.Cookies["uid"].Value;
}
在.NET里独有的赋值方法:
代码如下:
System.Web.HttpCookie user_cookies_id=new HttpCookie("uid");
user_cookies_id.Value="20";
user_cookies_id.Expires=DateTime.Now.AddDays(1);
Response.AppendCookie(user_cookies_id);
--------------------------------
HttpCooKie acookie=new Httpcookie("lastvisitcounter");
acookie.value=lastvisitcounter.ToString();
acookie.Expires=DateTime.MaxValue;
Response.Cookie.Add(acookie);
if(Request.Cookies["lastvisitcounter"]==null)
{
textbox1.text="1";
}
else
{
HttpCookie acookie=request.Cookies["lastvisitcounter"];
textbox1.text=server.HtmiEncode(acookie.value);
}
session的使用
session("username")="aa" 写入
username=session("username") 读取
Session即会话,是指一个用户在一段时间内对某一个站点的一次访问。
Session对象在.NET中对应HttpSessionState类,表示“会话状态”,可以保存与当前用户会话相关的信息。
Session对象用于存储从一个用户开始访问某个特定的aspx的页面起,到用户离开为止,特定的用户会话所需要的信息。用户在应用程序的页面切换时,Session对象的变量不会被清除。
对于一个Web应用程序而言,所有用户访问到的Application对象的内容是完全一样的;而不同用户会话访问到的Session对象的内容则各不相同。
Session可以保存变量,该变量只能供一个用户使用,也就是说,每一个网页浏览者都有自己的Session对象变量,即Session对象具有唯一性。
(1)将新的项添加到会话状态中
语法格式为:
Session ("键名") = 值 或者 Session.Add( "键名" , 值)
(2)按名称获取会话状态中的值
语法格式为: 变量 = Session ("键名") 或者 变量 = Session.Item("键名")
(3)删除会话状态集合中的项
语法格式为: Session.Remove("键名")