·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> ASP.NET网站开发 >> [Asp.Net]状态管理(Session、Application、Cache、Cookie 、Viewstate、隐藏域 、查询字符串)
运行结果:
2.Session是保存在服务器端的用户变量。我可以在一个页面中对Session进行值,然后在另一个页面里访问它。
Session的附值方法如下:
2.Application
解释:如果数据应在多个客户端共享,就可以使用应用程序状态来保存。应用程序状态的使用方式跟Session非常相似。对于应用程序状态,应使用HttpApplication类,通过Page类的Application属性就可以访问它。
通常Application可以用来统计访问网站的人数,在启动Web应用程序时,初始化应用程序变量userCount。 Application_Start()是global.asax文件中的时间处理程序方法,在启动网站的第一个Asp.Net页面时调用该方法。
在Application_Start()事件处理程序中,应用程序变量userCount的值会递增。在改变应用程序变量之前,应用程序对象必须用Lock() 方法锁定,否则会出现线程问题,因为多个用户可以同时访问一个应用程序变量。在改变了应用程序变量的值后,还必须调用Unlock()方法。注意锁定和解 锁时间的时间比较短,在此时间段内,不应读文件或数据库中的数据。否则,其他用户就必须等到数据访问完成之后才能操作。
运行结果:
注意:不要在应用程序状态中存储太多的数据,因为应用程序状态需要服务器资源,直到服务器停止或重启之后,才会释放这些资源。
3.Cache
使用Cache类的优点是当缓存的数据发生变化时,Cache类会让数据失效,并实现缓存数据的重新添加,然后通知应用程序,报告缓存的及时更新。
1.常用的方法
创建cache 在DotNet环境下通过Cache.Insert(string key,object o)方法创建。其中key 代表cache的ID,o代表存到cache里的对象。 Add:将数据添加到Cache对象 Insert:向Cache中插入数据项,可用于修改已经存在的数据缓存项 销毁cache 通过方法Cache.Remove(string key)其中key 代表cache的 ID. 调用cache Cache支持装箱/拆箱操作。如你可以把一个DataSet对象ds通过Cache.Insert(“dsCache”,ds)的方式存到Cache中,可以通过拆箱操作 DataSet ds =(DataSet)Cache[“dsCache”]来访问它。 获取数据Get:从Cache对象中获取指定的数据项,注意返回的是Object类型,需要进行类型转换GetType:从Cache对象中获取数据项的类型,判断数据类型后,方便进行转换GetEnumerator循环访问Cache对象中的缓存数据项。注意其返回类型是“IDictionaryEnumerator”下面的代码演示了如何应用Cache类的这些方法。在使用本代码时需要注意,代码中使用了Arraylist对象,所以需要添加对命名空间“System.Collections”的引用,同时使用Cache类别忘记了添加命名空间