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转化列表形式,不然就会报错误。