【ASP.NET】Application、Server和Session

Application

定义

Application对象表示ASP.NET应用程序的一个实例,获取应用程序的当前状态

特点:

Application对象包含的数据可以被应用程序的所有用户使用,而且可以在网站运行期间持久保存。

用途:

记录网络信息,统计上线人数,在线人数等等。

与HttpApplication的关系

HttpApplication类定义ASP.NET应用程序中的所有应用程序对象通用的方法属性和时间,启用ASP.NET应用程序中多个会话和请求之间的全局信息共享
Application对象可以通过HTTPApplication类或Page类的属性获得
个人理解,简单说:
HttpApplication是一个基类,Application是HttpApplication类下的对象,存在于Global.asas文件中,Application是全局的。

Application对象的事件

事件 何时激发
Application_OnStart 在调用当前应用程序目录(或其子目录)的第一个ASP.NET页面时激发
Application_OnEnd 在应用程序最后一个会话结束时激发。此外,在使用Internet服务管理器管理单元停止Web应用程序时也会激发
Application_OnBegin 在每次页面请求开始时(理论上,在加载或刷新页面时)激发

Application对象的方法

方法 作用
Application.Lock() 锁定脚本中的所有变量,确保只有当前用户控制该页面
Application.UnLock() 当前用户将失去对应用程序的控制

Server

属性

属性 描述
ScriptTimeout 用户指定脚本在终止之前在服务器上运行的时间周期
MachineName 用于获取服务器的计算机名

方法

方法 描述
Excute 页面转向
Transfer 服务器上进行的页面转向,转跳到本地虚拟目录指定的页面
HTMLEncode 可以输出HTML的一些标签元素等
URLEncode 将文本或URL的特殊字符编码
MapPath 返回与Web服务器上的指定虚拟路径相对应的物理文件路径

Session

认识

Session是会话变量,Session对象存储用户信息
(1)用户特定信息
(2)在会话中跟踪和监视用户信息
(3)会话期满后销毁对象

属性

属性 描述
SessionID 唯一用户会话标识符
TimeOut 用户超时
LCID 本地标识符
IsNewSession 如果已使用当前请求创建会话,则返回True
Item 会话值的名称
Count 会话状态集合中的项目数

事件

事件 何时触发
Session_Start 每个用户访问网站的第一个页面时触发
Session_End 使用了session.abandon(),或session超时用户退出后均可触发

Application与Session的比较

Application是全局变量,Session是会话变量
通俗的说:
打开一个网站,Session就存在了,更换页,只要是这个网站的也,Session始终存在,当关闭这个网站的时候,Session就结束了,即一个会话结束,这就是会话变量。
而Application是始终存在的,不管你前台有多少客户打开网站的页,有多少客户关闭网站的页,只要服务器不关闭网站,Application始终存在。

猜你喜欢

转载自blog.csdn.net/cxh6863/article/details/81414650