怎样让页面刷新后 ArrayList 值不丢失
我在页面中需要用到ArrayList,但当我点击按钮后,因为执行了提交,ArrayList数据丢失了,请问怎样让它不丢失数据,因为必须要用到ArrayList,动态添加数组,所以请在不改变用ArrayList的前题下,谢谢了!!!!
------解决方案--------------------网页是无状态的,一旦执行完,到了IE客户端,服务端的页面对象全部消失。必须将你需要的保存好,下次进入这个页面中才能使用。
将ArrayList对象放入 ViewState 中保存
private ArrayList arrayList
{
get
{
object o = ViewState["ArrayList"];
if( o == null )
{
o = new ArrayList();
ViewState["ArrayList"] = o;
}
return o as ArrayList;
}
}
或者放入 Session, Application 中
------解决方案--------------------1.每次postback都初始化arraylist.
2.用viewstate记住arraylist.
------解决方案--------------------随便放咯,Session也可以,Cookie也可以,ViewState也可以,想咋扔咋扔
------解决方案--------------------ViewState
Session
Cache
Application (全局的)
------解决方案--------------------ArrayList,动态添加数组??
如果值是固定的,那好办:在页面初始化时,直接ArrayList,动态添加数组
是不是要在if(!IsPostBack)里用,你自己试一下就知道了,哪个得要哪个.
不行就用楼上的正解,总比直接DataBase 好.
------解决方案--------------------private static ArrayList Arrl=.....
------解决方案--------------------也可以用静态类里做一个静态属性,进行设置,取值操作
当然viewstate session cookie 均可