首页 新闻 会员 周边

关于页面中List<T> 存储的问题

0
悬赏园豆:50 [已解决问题] 解决于 2009-05-14 13:32

我要实现的是。点击页面中的按钮,把T存储到list 中,可是点击按钮必定使页面重新加载,之前定义的list<T> 实例 又会重新初始化。请问该怎么解决?用静态变量可以解决问题,但多人同时操作页面时会共享这个list ,这个不行

三颗屎的主页 三颗屎 | 初学一级 | 园豆:129
提问于:2009-05-07 12:39
< >
分享
最佳答案
0

用ViewState的话,如果List 的数据量很大,或者并发量很大,将会对网站效率产生很大影响。

用静态变量没有问题的,只要在访问是用 lock 锁定就可以了。

eaglet | 专家六级 |园豆:17139 | 2009-05-08 07:52
其他回答(6)
0

不存到数据库里?

Annie | 园豆:396 (菜鸟二级) | 2009-05-07 13:19
0

状态试图 ViewState .net中专门解决回传的问题,但是慎用。

viewstate是在页面添加的一个隐藏域,类似域hidden控件,你只要在添加了list<T>后,把list<t>添加到viewstate[字段名].中,在下一次书信页面后,在page_Load 中用ispostback判断,list<T>对象重新赋值就可以了。

viewstate["list"]=list对象;

取值:list对象= viewstate["list"] as list<类型>

邢少 | 园豆:10926 (专家六级) | 2009-05-07 13:50
0

protect List<int> MyList {

  get { return (List<int>)ViewState["MyList"]; }

  set { ViewState["MyList"] = value; }

}

Gray Zhang | 园豆:17610 (专家六级) | 2009-05-07 15:05
0

同意2楼观点。

天堂口 | 园豆:514 (小虾三级) | 2009-05-07 20:29
0

!IsPostBack 绑定数据

按钮时间中在list中添加数据即可

James.Ying | 园豆:1472 (小虾三级) | 2009-05-08 12:06
0

同意eaglet

Jerry Qian | 园豆:19 (初学一级) | 2009-05-08 16:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册