博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Asp.net页面参数周期
阅读量:6525 次
发布时间:2019-06-24

本文共 1149 字,大约阅读时间需要 3 分钟。

 

viewstate  生命周期为 单个页面开始到结束

 

 

 

方法

信息量大小

保存时间

应用范围

保存位置

Application

任意大小

整个应用程序的生命期

所有用户

服务器端

Session

小量,简单的数据

用户活动时间+一段延迟时间(一般为20分钟)

单个用户

服务器端

Cookie

小量,简单的数据

可以根据需要设定

单个用户

客户端

1.Application对象 

    Application用于保存所有用户的公共的数据信息,如果使用Application对象,一个需要考虑的问题是任何写操作都要在Application_OnStart事件(global.asax)中完成.尽管使用Application.Lock和Applicaiton.Unlock方法来避免写操作的同步,但是它串行化了对Application对象的请求,当网站访问量大的时候会产生严重的性能瓶颈.因此最好不要用此对象保存大的数据集合

2.Session对象

    Session用于保存每个用户的专用信息.她的生存期是用户持续请求时间再加上一段时间(一般是20分钟左右).Session中的信息保存在Web服务器内容中,保存的数据量可大可小.当Session超时或被关闭时将自动释放保存的数据信息.由于用户停止使用应用程序后它仍然在内存中保持一段时间,因此使用Session对象使保存用户数据的方法效率很低.对于小量的数据,使用Session对象保存还是一个不错的选择.使用Session对象保存信息的代码如下:

//存放信息
Session["username"]="zhouhuan" ;
//读取数据
string UserName=Session["username"].ToString();

   3.Cookie对象

    Cookie用于保存客户浏览器请求服务器页面的请求信息,程序员也可以用它存放非敏感性的用户信息,信息保存的时间可以根据需要设置.如果没有设置Cookie失效日期,它们仅保存到关闭浏览器程序为止.如果将Cookie对象的Expires属性设置为Minvalue,则表示Cookie永远不会过期.Cookie存储的数据量很受限制,大多数浏览器支持最大容量为4096,因此不要用来保存数据集及其他大量数据.由于并非所有的浏览器都支持Cookie,并且数据信息是以明文文本的形式保存在客户端的计算机中,因此最好不要保存敏感的,未加密的数据,否则会影响网站的安全性.使用Cookie对象保存的代码如下:

//存放信息
Response.Cookies["UserID"].Value="0001" ;
//读取信息
string UserID=Response.Cookies["UserID"].Value;
你可能感兴趣的文章
Ubuntu 12 编译安装 PHP 5.4 及 问题汇总
查看>>
mysql服务器io等待高定位与分析
查看>>
全排列问题
查看>>
iOS 2D绘图详解(Quartz 2D)之阴影和渐变(Shadow,Gradient)
查看>>
ant 使用指南
查看>>
2017年计划
查看>>
Uva 11077 Find the Permutations [置换群 DP]
查看>>
多个类混合使用,实现扑克牌随机创建和展示
查看>>
Eclipse项目修改没有同步到编译的问题
查看>>
[C++设计模式] singleton 单例模式
查看>>
在ASP.NET Core中实现自定义验证特性(Custom Validation Attribute)
查看>>
nginx泛域名解析实现二级域名多域名
查看>>
xshell,putty远程连接Linux并使用密钥认证
查看>>
(转)Maven仓库——私服介绍
查看>>
Zynq-Linux移植学习笔记之27UIO机制响应外部中断实现【转】
查看>>
Flutter – 生成二维码与识别二维码
查看>>
javaScript博文目录
查看>>
java 写文件
查看>>
最近看的几本书
查看>>
C# 消息处理机制及自定义过滤方式
查看>>