关于ASP.NET Session的一些感慨
时间:2010-08-17 来源:Sandy8606
最近手里分到一个bug,很是怪异。客户说预定的内容与最后提交的数据库的信息不一致。 而且这种情况发生的概率很小,运行了N多年才发生了3起这样的事件,也都是最近发生的。检查了下代码,最近并没有什么更新。
客户提交的信息是保存在session中,而且有两个页面会对这个session进行赋值。
本人对各种浏览器进行了测试,并没有发现问题(毕竟概率太小了)。后来还是同事建议,在同一个浏览器中再开一个Tab,分别打开这两个能修改session的页面,暂且叫做PageA 和PageB吧。奇迹发生了:对PageA进行操作给session赋一个值,在PageB也给session赋另一个值,结果在PageA查看session,发现已经变成PageB赋的值。如此这般操作下去,发现的确会出现数据不一致的问题。
个人感悟:不要在一个程序中多个地方队session进行修改(读取没问题),在提交到数据库的时候,一定要检测数据的一致性。
相关阅读 更多 +