Application对象、Session对象、Cookie对象、Server对象初步认识
Application对象:记录应用程序参数的对象
用于共享应用程序级信息,即多个用户共享一个Application对象。在第一个用户请求ASP.NET文件时,将启动应用程序并创建Application对象。一旦Application对象被创建,它就可以共享和管理整个应用程序的信息。在应用程序关闭之前,Application对象一直存在。所以,Application对象是用于启动和管理ASP.NET应用程序的主要对象
属性:
Application.AllKeys:返回全部Application对象变量名到一个字符串数组中
Application.Count:获取Application对象变量的数量
Application.Item:允许使用索引或者Application变量名称传回内容值
Application["app1"]="app1";Application[0]//给Application对象变量赋值
Application["app2"]="app2";Application[1]
Application["app3"]="app3";Application[2]
方法:
Application.Add("app1","app1");//新增一个Application变量
Application.Clear();//清除全部Application对象变量
Application.Lock();//锁定全部Application对象变量
Application.Remove("app1");//使用变量名移除一个Application对象变量
Application.RemoveAll();//移除全部Application对象变量
Application.UnLock();//解除锁定的Application对象变量
常用事件:
1、Application_Start事件
Application_Start事件在首次创建新的会话(即事件)之前发生,只有Application和Server内置对象可以使用。在Application_Start事件中引用Session、Request或Response对象将导致错误。由于Application对象是多用户共享的,因此它与Session对象有本质区别,同时Application对象不会因为某一个甚至全部用户的离开而消失,一旦建立了Application对象,那么它就会一直存在直到网站关闭或者该Application对象被卸载,这通常需要很长时间。由于Application对象创建后不会自己注销,因此一定要特别小心使用。另外,它会占用内存,要避免降低服务器对其他工作的响应速度。中止Application对象有3中方法,分别为服务被中止、Global.asax文件被改变或者该Application对象被卸载
2、Application_End事件
Application_End事件在应用程序退出时于Session_End事件之后发生,只有Application和Server内置对象可使用。Application_End事件只有在服务中止或者该Application对象卸载时才会触发,如果单独使用Application对象,该事件可以通过Application对象在利用Unload事件卸载时进行触发。一个Application_End事件肯定发生在Session_End事件之后。Application_End事件触发唯一一个脚本程序,它存在于Global.asax文件中
*如果希望服务中止或者Application对象卸载时执行某些操作,可以在Application_End事件中编写相应代码
Application应用:
实现在线人数统计
Void Session_Start(object sender, EventArgs e)
{
Application.Lock();//锁定
Application["count"] = (int)Application["count"] + ;//访客增加
Application.UnLock();//开锁
} Void Session_End(object sender, EventArgs e)
{
Application.Lock();//锁定
Application["count"] = (int)Application["count"] - ;//访客减少
Application.UnLock();//开锁
}
Session对象:记录浏览器端的变量对象
用来存储跨网页程序的变量或者对象。Session对象只针对单一网页使用者,也就是说服务器会为连接的客户端分配各自的Session对象,不同的客户端无法互相存取。当Session对象超过设置的有效时间时,Session对象就会消失。Session对象和Application对象都是Page对象的成员,因此可直接在网页中使用。
属性:
Session.Contents:获取对当前会话状态对象的引用
Item:获取或设置会话值
TimeOut:设置Session对象的有效时间,默认值为20分钟;可以在应用程序的web.config文件中,使用sessionState配置元素的timeout属性来设置TimeOut属性,也可以直接使用程序代码来设置TimeOut属性值
方法:
Abandon:此方法结束当前会话,并清除会话中的所有信息
Add:用于向Session对象集合中添加一个新项
CopyTo:将会话状态值的集合复制到一维数组中(从数组的指定索引处开始)
Clear:此方法清除全部的Session对象变量,但不结束会话
Session应用:
记录用户名和密码
Session["UserName"] = UserName;
Session["PassWord"] = PassWord;
Cookie对象:也称缓存对象
用来保存客户端浏览器请求的服务器页面,也可用它存放非敏感性的用户信息。Cookie对象保存用户信息的时间可以根据用户的需要进行设置。并非所有的浏览器都支持Cookie,并且数据信息将以文本形式保存在客户端计算机中。
属性:
Clear:清除所有的Cookie
Expires:设定Cookie对象的有效时间,默认为1000分钟,若设为0,则可以实时删除Cookie对象
Name:取得Cookie对象的名称
Value:获取或设置Cookie对象的内容值
Path:获取或设置Cookie使用的URL
Expires属性必须被设置,若没有指定,则Cookie变量将不会被存储
方法:
Equals:确定制定Cookie是否等于当前的Cookie
ToString:返回此Cookie对象的一个字符串表现形式
Server对象:也称服务器对象
属性:
MachineName:获取服务器的计算机名称
ScriptTimeout:获取和设置请求超时值
方法:
HtmlDecode:对已被编码以消除无效HTML字符的字符串进行解码
HtmlEncode:对要在浏览器中显示的字符串进行编码
MapPath:返回与Web服务器上的指定虚拟路径相对应的物理文件路径
UrlDecode:对字符串进行解码,该字符串为了进行HTTP传输而进行编码并在URL中发送到服务器
UrlEncode:编码字符串,以便通过URL从Web服务器到客户端进行可靠的HTTP传输
Application对象、Session对象、Cookie对象、Server对象初步认识的更多相关文章
- ASP.NET之Application、Session和Cookie的差别
在Asp.net中Application.Session和Cookie都能够保存信息,那么它们有什么不同呢? 一.首先Application是在server端建立一个状态变量,存储于server的全局 ...
- [置顶] Application,Session,Cookie之Application对象
概述 Application为全局作用域,且只有一个Application对象,它可以存储和访问任意页面的变量(数据存储类型都是Object,也就是任意类型),同时也被多页面使用(也为引用). App ...
- asp.net Application、 Session、Cookie、ViewState、Cache、Hidden 的区别
这些对象都是用来保存信息的,包括用户信息,传递值的信息,全局信息等等.他们之间的区别: 1.Application对象 Application用于保存所有用户的公共的数据信息,如果使用Applicat ...
- (11)Web程序保存状态的几种方式,Application,Session,Cookie,ViewState
WEb程序保存状态的方式有这样几种: 1.Application:保存在Application中的数据是全局有效的:Application里面存放的应该是访问多修 改较少并且是全局至少大部分 ...
- ASP.NET保存信息总结(Application、Session、Cookie、ViewState和Cache等) ZT
http://www.cnblogs.com/ranran/p/4065619.html http://www.cnblogs.com/jxlsomnus/p/4450911.html 以下是关于AS ...
- [ASP.net教程]ASP.NET保存信息总结(Application、Session、Cookie、ViewState和Cache等)
以下是关于ASP.NET中保存各种信息的对象的比较,理解这些对象的原理,对制作完善的程序来说是相当有必要的(摘至互联网,并非原创--xukunping)在ASP.NET中,有很多种保存信息的对象.例如 ...
- ASP.NET保存信息总结(Application、Session、Cookie、ViewState和Cache等)
以下是关于ASP.NET中保存各种信息的对象的比较,理解这些对象的原理,对制作完善的程序来说是相当有必要的(摘至互联网,并非原创--xukunping) 在ASP.NET中,有很多种保存信息的对象.例 ...
- asp.net内置对象session和cookie
1.各个机器的session对象不同,不同浏览器之间不通用(换个浏览器,是个新的session). 2.session状态对象起始于网页打开,终止于网页关闭,生命周期有限. 3.关闭浏览器/超时的情况 ...
- NET中Application,Session,Cookie,ViewState,Cache,Hidden 缓存机制 .
Application 1. Application用来保存所有用户共用的信息 2. 在Asp时代,如果要保存的数据在应用程序生存期内不会或者很少发生改变,那么使用Ap ...
- Application、Session、Cookie、ViewState的特性
http://blog.csdn.net/zyw_anquan/article/details/7664132 Application的特性: 存储的物理位置:服务器端内存. 存储的类型限制:任意 ...
随机推荐
- 自定义路径创建Cocos2d-x项目
自定义路径创建Cocos2d-x项目 本文介绍windows下面如何优雅的创建Cocos2d-x项目.为何称之为优雅,是因为现在网上流传的一些创建方法有一些问题.大致内容如下: l 使用VS向导创建 ...
- 一个简单的通用Makefile实现
一个简单的通用Makefile实现 Makefile是Linux下程序开发的自动化编译工具,一个好的Makefile应该准确的识别编译目标与源文件的依赖关系,并且有着高效的编译效率,即每次重新ma ...
- 我心中的核心组件(可插拔的AOP)~调度组件quartz.net续~任务管理器的开发
回到目录 对于任务调度来说,越来越多的团队选择了quartz,它在java和.net环境下表现都十分优秀,配置简单,功能强大,时间表达式配置灵活,但在使用时,还是感觉缺点什么,怎么说,你在服务器上安装 ...
- Atitit jsr规范化分类 attilax总结
Atitit jsr规范化分类 attilax总结 按照技术类别可以分成以下几类:1.Java EE (39 JSRs) --- J2EE平台规范 2.Java SE (42 JSRs) --- J2 ...
- Atitit 编程语言知识点tech tree v2 attilax大总结
Atitit 编程语言知识点tech tree v2 attilax大总结 大分类中分类小分类知识点原理与规范具体实现(javac#里面的实现phpjsdsl(自己实现其他语言实现 类与对象实现对象实 ...
- js中NAN、NULL、undefined的区别
NaN:保留字(表明数据类型不是数字) undefined:对象属性或方法不存在,或声明了变量但从未赋值.即当你使用了对象未定的属性或者未定义的方法时或当你声明一个变量,但你确从未对其进行赋值,便对其 ...
- MySQL(一) 数据表数据库的基本操作
序言 这类文章,记录我看<MySQL5.6从零开始学>这本书的过程,将自己觉得重要的东西记录一下,并有可能帮助到你们,在写的博文前几篇度会非常基础,只要动手敲,跟着我写的例子全部实现一遍, ...
- KlayGE 4.4中渲染的改进(四):SSSSS
转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2774 本系列的上一篇提到了KlayGE 4.4将会出现的高质量地形渲染.本篇仍讲一个新功能, ...
- java中Object.equals()简单用法
/* equals()方法默认的比较两个对象的引用! */ class Child { int num; public Child(int x){ num = x; } //人文的抛出运行时异常的好处 ...
- Cocos2d-x 3.2 学习笔记(一)环境搭建
目前项目无事,时间比较充裕,因此来学习下cocos2dx,当然本人也是新手一个, 写此笔记做备忘和脚步. 最近3.2版本更新出來了!官方说这是自2.x分支以来修复了超过450个bug,3.2版本是目前 ...