黑马程序员-asp.net中保存状态方法对比小结
------- Windows Phone 7手机开发、.Net培训、期待与您交流! -------
由于asp.net客户端是无状态的,当用户重发请求,页面就会重刷新。【补充:Web开发不像软件开发,Web应用实际上是没有状态的,这就说明Web应用程序不自动指示序列中的请求是否来自相同的浏览器或客户端,也无法判断浏览器是否一直在浏览一个页面或者一个站点,也无法判断用户执行了哪个操作并统计用户的喜好。】
于是,就诞生:
于是,就诞生:
viewstate\hidden\cookie\?key1=value1【&key2=value2】\session\application\cache
方法
|
信息量大小
|
作用域和保存时间
|
应用范围
|
保存位置
|
Application
|
任意大小
|
整个应用程序的生命期
|
整个应用程序/所有用户
|
服务器端
|
Session
|
小量,简单的数据
|
用户活动时间+一段延迟时间(一般为20分钟)
|
单个用户
|
服务器端
|
Cookie
|
小量,简单的数据
|
可以根据需要设定
|
单个用户
|
客户端
|
Viewstate
|
小量,简单的数据
|
一个Web页面的生命期
|
单个用户
|
客户端
|
Cache
|
任意大小
|
可以根据需要设定
|
整个应用程序/所有用户
|
服务器端
|
隐藏域
|
小量,简单的数据
|
一个Web页面的生命期
|
单个用户
|
客户端
|
查询字符串
|
小量,简单的数据
|
直到下次页面跳转请求
|
单个用户
|
客户端
|
------- Windows Phone 7手机开发、.Net培训、期待与您交流! -------