本课件适应于计算机网络专业ASPNET课程_第1页
本课件适应于计算机网络专业ASPNET课程_第2页
本课件适应于计算机网络专业ASPNET课程_第3页
本课件适应于计算机网络专业ASPNET课程_第4页
本课件适应于计算机网络专业ASPNET课程_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ASP.NET程序设计教程(第16讲)回顾1.

Session对象概述2.保存对话信息3.判断是否创建了新会话第六章ASP.NET内置对象应用6.5.4~6.6知识点1.判断是否创建了新的会话知识点2.设置会话的有效期限知识点3.处理会话事件知识点4.Application对象教学目标1.掌握判断是否创建了新的会话2.掌握设置会话的有效期限3.掌握处理会话事件4.掌握Application对象语法及应用知识点1.判断是否创建了新的会话6.5.4判断是否创建了新的会话 使用Session对象的IsNewSession属性可以判断指示会话是否是与当前请求一起创建的。如果会话是与当前请求一起创建的,则该属性值为True,表明创建了一个新的会话,否则为False,表明仍处在先前开始的一个会话中。案例本例说明如何通过设置Session对象的Timeout,属性来控制会话的有效期限。在程序将Session.Timeout属性设置为1分钟,并创建两个会话变量。打开网页时,显示当前时间和两个会话变量的值。超过1分钟后,单击“查看会话变量”按钮,再次查看会话变量,次时会话变量树木为0,表明会话进行已经结束。6.5.5设置会话的有效期限每一个与Web服务器建立连接的客户端都拥有独立的会话进程W,服务器管理这些进程时需要占用一定的系统资源。在现实生活中,有些用户在浏览网页的过程中,可能要去处理其他事件而没有关闭与服务器的连接。在这种情况下,如果服务器一直在管理与此相关的会话进程,就会造成系统资源的浪费。由于这个缘故,当用户联机后在一段时间内没有刷新或请求网页,就可以考虑结束会话进程。若要设置在会话状态提供程序终止会话之前各请求之间所允许的超时期限,设置Session对象的Timeout属性即可。默认值为20分钟。知识点2.设置会话的有效期限案例本例说明书和通过调用Session。Abandon()方法强制结束会话。在本例中公创建3个页面,包括两个aspx页面和一个HTML页面,文件名分别为WebForm—19.aspx,WebForm_9.aspx和HTMLPag6_9c.tm,分别用作登录页面,欢迎页面和注销后的页面。登录成功后进入欢迎页面,当单击“注销”连接是通过执行Session.Abandon()方法销毁Session对象,然后HTML页面。知识点3.处理会话事件6.5.6处理会话事件 Session对象有两个事件:即Start事件和End事件。通过对这两个事件编写事件处理程序可以在会话开始和结束时执行指定的操作。这些事件处理程序的代码必须包含在一个名为Global.asax的文件中,每当在VisualStudio.NET中创建Web项目时总会自动创建该文件。1.Session_Start事件 当会话开始时发生Session_Start事件。因为Session对象仅用于保存单个用户的信息,所以,如果在某段时间内有100个用户访问Web服务器,那么Session对象的Start事件就会发生100次。如果希望在创建会话时就执行一段程序,将这段程序放在Session_Start事件过程中即可。2.Session_End事件 当调用Session.Abandon()方法或在指定的时间内没有请求或刷新页面,便发生该事件并执行Session_End事件过程,相应的Session对象随之自动结束。知识点4.Application对象6.6.1Application对象的主要属性和方法常用属性AllKeys Contents CountItem StaticObjects

常用方法Add(name,value) Clear() Get({name,index})GetKey(index) Lock() Remove()RemoveAll() RemoveAt(index)Set(name,value) UnLock()常用事件Start EndBeginRequest

EndRequestError AuthenticateRequest上述事件的处理程序必须在Global.asax文件中编写。知识点4.Application对象6.6.2保存应用程序状态 使用Application对象保存信息时,标准作法是首先使用Add方法添加应用程序变量,然后使用Set方法更改该变量。 通过调用Application.Add方法将新的对象添加到应用程序状态集合中,语法如下: Application.Add("变量名",值)例如,下面的语句将名为AppVar1和AppVar2的应用程序变量添加到Application集合中。Application.Add("AppVar1",Object1)Application.Add("AppVar2",Object2)案例使用Application对象制作页面计数器,要求当用户按F5键或单击“刷新”按钮是电击数不会增加。知识点4.Application对象6.6.3处理应用程序事件1.Start事件 Application_Start事件在应用程序启动时发生。2.End事件 Application_End事件在应用程序结束时发生,即当Web服务器关机或重新启动时发生End事件。3.BeginRequest事件

Application_BeginRequest事件在客户端向服务器端发送处理请求后发生,即在ASP.NET响应请求时作为HTTP执行管线链中的第一个事件发生。4.EndRequest事件

Application_EndRequest事件在每个客户端请求处理结束时发生,即在ASP.NET响应请求时作为HTTP执行管线链中的最后一个事件发生。5.Error事件 Application_Error在应用程序出现错误时发生。6.AuthenticateRequest事件

Application_AuthenticateRequest在尝试进行身份验证请求时发生。知识点4.Application对象6.6.4Global.asax文件

Global.asax文件称为ASP.NET应用程序文件,它是一个可选文件,其中包含用于响应ASP.NET或HttpModule引发的应用程序级别事件的代码。Global.asax文件驻留在基于ASP.NET的应用程序的根目录中。在运行时,分析Global.asax文件并将其编译到一个动态生成的.NETFramework类,该类是从HttpApplication基类派生的。Global.asax文件本身被配置为自动拒绝对它的任何直接URL请求,外部用户无法下载或查看在该文件中编写的代码。

Global.asax文件是可选的。如果不定义该文件,ASP.NET页框架假设未定义任何应用程序或会话事件处理程序。 当将更改保存到活动Global.asax文件时,ASP.NET页框架检测到该文件已被更改。它完成应用程序的所有当前请求,将Application_OnEnd事件发送到任何侦听器,并重新启动应用程序域。实际上,这会重新启动应用程序,关闭所有浏览器会话并刷新所有状态信息。当来自浏览器的下一个传入请求到达时,ASP.NET页框架将重新分析并重新编译Global.asax文件并引发Application_OnStart事件。小结1.判断是否创建了新的会话2.设置会话的有效期限3.处理会话事件4.

Application对象语法及应用案例本例使用Application和Session对象统计网站当

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论