ASP.NET页面中慎用静态变量

在Asp.net页面中定义了一个静态变量,本来是为了存储不同查询结果,以便于随时对GridView进行绑定,以免在分页时丢掉原来的查询结果;
    注:因为只是一个小文档库,没有采用严格的分页技术,只是利用了GridView的分页;
无意中想到了,这个静态变量在页面中是谁都可以访问的,也就是说会有一种情况:用户A查询一次,正在分页进行浏览,用户B登录并进行查询,这时候静态变量的值发生变化,不是预想的了,还是用Session吧!

后记:
朋友建议我用ViewState,毕竟Session很占用服务器的内存资源,我也有同感,后来就用ViewState了,不过,这两个是不一样的;
ViewState是针对页面的,与用户不发生关系,Session是针对用户的,每个用户都有自己Session;
Viewstate中只能存储值类型的变量或参数,而Session则是值类型与引用类型都可以存储,鉴于这一点,我后来在ViewState中只存储查询的XML语句了;

顺便谢谢这位朋友的提醒,学习中!
posted @ 2007-12-28 14:49  JerryShi  阅读(1320)  评论(2编辑  收藏  举报