1. 关于使用之前要注意的:

  在使用session之前,一定要注意继承自System.Web.UI.Page,或在使用session时加上System.Web.HttpContext.Current:

如:System.Web.HttpContext.Current.Session["Items"] ="xxx";

2. 在使用过程中遇到数据类型的转换,具体操作如下:

将Session中的值转为DataTable类型:

  System.Data.DataTable dtTrendResult = (System.Data.DataTable)System.Web.HttpContext.Current.Session["xxx"];

3. Web中Session的设置与获取:

public List<DevicesModel> GetDeviceDataList(string OrderID)
{
List<DevicesModel> dms = new List<DevicesModel>();
if (Session["DeviceList"] == null)
{
DevicesModel dm1 = new DevicesModel();
dm1.ID = ;
dm1.OrderID = "ORD0001";
dm1.DeviceType = "DTM";
dm1.Manufacturer = "CETE";
dm1.Model = "MC-202";
dm1.SerialNumber = "A-3042896";
dm1.Status = "Order Saved";
dms.Add(dm1); DevicesModel dm2 = new DevicesModel();
dm2.ID = ;
dm2.DeviceType = "DTM";
dm2.Manufacturer = "A&D";
dm2.Model = "UC-DCC-C";
dm2.SerialNumber = "B-1221-0012";
dm2.Status = "Order Saved";
dms.Add(dm2); DevicesModel dm3 = new DevicesModel();
dm3.ID = ;
dm3.DeviceType = "ATG";
dm3.Manufacturer = "A&D";
dm3.Model = "UA-BBL-C";
dm3.SerialNumber = "B-1001-0012";
dm3.Status = "Order Saved";
dms.Add(dm3); DevicesModel dm4 = new DevicesModel();
dm4.ID = ;
dm4.OrderID = "ORD0002";
dm4.DeviceType = "ATG";
dm4.Manufacturer = "CETE";
dm4.Model = "MC-232";
dm4.SerialNumber = "";
dm4.Status = "Order Saved";
dms.Add(dm4); Session["DeviceList"] = dms;
}
else
{
dms = (List<DevicesModel>)Session["DeviceList"];
}
return dms;
}

4. Session的清空:

public string ClearSession()
{
try
{
Session.Remove("DeviceList");
return "OK";
}
catch (Exception ex)
{
return ex.Message.ToString();
}
}

最后,需要注意的是构造函数中不能使用Session,这应该是所有要注意的了!

C# Web中Session的使用的更多相关文章

  1. web中session与序列化的问题

    最近在写网上商城项目的时候学习了一个关于session的序列化问题,过来总结一下. 众所周知,session是服务器端的一种会话技术,只要session没有关闭,一个会话就会保持.这里先引出一个问题: ...

  2. 理解 Web 中的Session

    ===================================Session 工作原理是什么?===================================因为 http 协议是无状态 ...

  3. JAVA EE中session的理解

    转自[互动百科]http://www.baike.com/wiki/Session   Session Session:在计算机中,尤其是在网络应用中,称为“会话”.Session直接翻译成中文比较困 ...

  4. 跟我一起学WCF(8)——WCF中Session、实例管理详解

    一.引言 由前面几篇博文我们知道,WCF是微软基于SOA建立的一套在分布式环境中各个相对独立的应用进行交流(Communication)的框架,它实现了最新的基于WS-*规范.按照SOA的原则,相对独 ...

  5. 几种判断asp.net中session过期方法的比较

    方法一:最麻烦也是最容易想到的方法,在每个页面的page_load()方法里面判断: protected void Page_Load(object sender, EventArgs e) { if ...

  6. php中session的运行机制

    在PHP中session默认是以文件的形式存储于服务器的 而客户端和服务端则是通过session_id来完成握手的,默认情况下PHP会将session_id存储于cookie中,用户每次请求时该ses ...

  7. tomcat中session在两个webapp中实现共享

    现在遇到一个需求就是要求完成简单的单点登录,通过在一个tomcat实例中放置两个webapps应用ROOT应用和CEO应用来完成在ROOT应用登录后,在CEO可以直接使用,而未在ROOT应用登录时,不 ...

  8. 07flask中session及cookie的用法。

    一,基本概念. 1,session的概念. session和cookie的作用有点类似,都是为了存储用户相关的信息.不同的是,cookie是存储在本地浏览器,而session是存储在服务器.存储在服务 ...

  9. NHibernate中Session的处理 线程不安全

    NHibernate中Session是线程不安全的,而且每次数据库操作 请求创建Session时对性能有些影响.在Windows应用中可以通过 [ThreadStatic]特性很简单的就可以实现线程安 ...

随机推荐

  1. Get与Post的一些总结

    1.GET请求的数据会附在URL之后,POST把提交的数据则放置在是HTTP包的包体中. 2."GET方式提交的数据最多只能是1024字节这句话是错误的 URL不存在参数上限的问题,HTTP ...

  2. python代码

    f=open('/home/xbwang/newtextsimilarity/data/glove/glove.840B.300d.txt','r') count = 0 print ' '.join ...

  3. Repeater删改

    一.Repeater删改 中心思路:点击"删除"链接,跳转到"删除"网页,在"删除"网页里面执行删除方法,然后再返回主界面,根据删除界面返回 ...

  4. UPDATE语句:将一个表里的字段更新到另一个表的字段里的语句

    update table2 b,(select b.area_id as arid,sum(a.user_amount) as bcount from table1 a,table2 b where ...

  5. POJ 3320 Jessica's Reading Problem 尺取法

    Description Jessica's a very lovely girl wooed by lots of boys. Recently she has a problem. The fina ...

  6. Python3基础 双星号 求一个数的几次幂

    镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...

  7. 未能加载文件或程序集“CefSharp, Version=1.25.XXXX”或它的某一个依赖项。试图加载格式不正确的程序。

    在使用CefSharp的过程中遇到一个坑爹的错误. 从GitHub的项目主页:https://github.com/cefsharp/CefSharp/wiki/Frequently-asked-qu ...

  8. 禁止在 .NET Framework 中执行用户代码。启用 "clr enabled" 配置选项

    exec sp_configure 'show advanced options', '1';goreconfigure;goexec sp_configure 'clr enabled', '1'g ...

  9. linux终端下为什么用命令打开软件后,要关闭软件才能继续下一条命令?

    用终端打开chromium浏览器(命令:chromium-browser)的时候发现打开浏览器之后无法继续在终端输入命令,只能关闭浏览器或者在终端按下Ctrl+c,此时系统将退出浏览器并可以继续在终端 ...

  10. Upgrade R (升级R语言)

    R R version 3.1.1 (2014-07-10) -- "Sock it to Me" yum list installed | grep R R-core.x86_6 ...