欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C#的Session创建和使用

程序员文章站 2022-03-14 23:10:39
...

在C#中使用Session的方法步骤

开发工具与技术:工具:Visual Studio/c#,技术:C#
作者:刘胜
撰写时间:2019-02-15


一、简单了解C#中的Session
Session是一个缓存机制,存储在服务端,当客户端(浏览器)关闭时即销毁。若长时间不使用且浏览器未关闭的情况下, 默认自动销毁时间为20分钟。Session储存服务端的数据可以直接传递到客服端,有点像起了桥梁连接的作用。而利用服务端数据优点是比较便捷,代码比较少;缺点是数据容易丢失,缓存期比较短 。因此用Session的对象保存用户数据的方法效率低,对于小量的用户数据,使用Session还是一个不错的选择。
二、创建Session对象

pubice static void CreatSession(){
 //存
 Session["user"] = "MySession";//可以直接不用声明对象的形式把数据储存Session["user"]中。
 List<类名> listSession= new List<类名>();//创建以listSession对象的List<类名>集合。
 //当判断Session["listSession"]不为空的时候,声明的Session的命名 用 as的操作符转换目标类型或者转换目标类型的派生类型。
 if (Session["listSession"] != null) {
 listSession = Session["listSession"] as List<类名>;
 }
 类名 对象1 = new 类名();
 对象1.属性 = "getSession";
 listSession.Add(对象1);//Add是Session添加对象的方法。由于listSession是类名的集合,所以Add()方法添加为类名对象。
}

三、读取Session数据

public static string readSession(){
 //取
 String username = Session["user"].ToString();//读取前面声明的Session["user"]时所赋的初始值,所以此时的username = MySeession
  List<类名> listSession= new List<类名>();//创建以listSession对象的List<类名>集合。
 类名 对象2 = new 类名();
 if (Session["listSession"] != null) {
  listSession = Session["listSession"] as List<类名>;
 }
 if(listSession != null) {
    对象2.属性 = listSession[0].属性; //此时的对象2.属性 = 对象1.属性 = "getSession";
 } 
 return username + "and" + 对象2.属性;
}

四、输出Session值

 public static void Main(string[] args){
  CreatSession();
  Console.WriteLine("Session Values is:{0}",readSession());
  Console.ReadLine();
 }

五、总结
刚才使用Session作了两种储存,一种直接给Session赋值初始值,另一种是用操作符将Session转化List列表的形式,因而可以比第一种储存的数据更多。但是使用第二种的储存一定要注意Session的值在为空时,把Session转化列表形式,不然就会报错误。