专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Visual Studio

Application对象、Session对象、Cookie对象、Server对象初始认识

发布时间:2011-06-23 13:54:23 文章来源:www.iduyao.cn 采编人员:星星草
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应用:

实现在线人数统计

 1 Void Session_Start(object sender, EventArgs e)
 2 {
 3       Application.Lock();//锁定
 4       Application["count"] = (int)Application["count"] + 1;//访客增加    
 5       Application.UnLock();//开锁
 6 }
 7 
 8 Void Session_End(object sender, EventArgs e)
 9 {
10       Application.Lock();//锁定
11       Application["count"] = (int)Application["count"] - 1;//访客减少    
12       Application.UnLock();//开锁
13 }
View Code

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传输

友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: