asp对象及状态管理

上传人:san****019 文档编号:70842062 上传时间:2019-01-18 格式:PPT 页数:45 大小:392.51KB
返回 下载 相关 举报
asp对象及状态管理_第1页
第1页 / 共45页
asp对象及状态管理_第2页
第2页 / 共45页
asp对象及状态管理_第3页
第3页 / 共45页
asp对象及状态管理_第4页
第4页 / 共45页
asp对象及状态管理_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《asp对象及状态管理》由会员分享,可在线阅读,更多相关《asp对象及状态管理(45页珍藏版)》请在金锄头文库上搜索。

1、第6章 ASP.NET对象及状态管理,本章主要内容,6.1 关于Page类 6.2 Response对象 6.3 Request对象 6.4 Server对象 6.5 状态管理概述 6.6 Cache对象,6.1 关于Page类,6.1.1 理解Page类,6.1.2 Page类的属性,(1)内置对象 (2)IsPostBack属性 (3)EnableViewState属性 (4)IsValid属性,6.1.3 Page类的事件,ASP.NET网页运行时,此页将经历一个生命周期,在生命周期中将执行一系列处理步骤。这些步骤包括初始化、实例化控件、还原和维护状态、运行事件处理程序代码及进行呈现。在

2、网页生命周期的每个阶段,网页都可以响应各种触发事件。对于控件事件,通过声明方式使用属性(如Click)或以使用代码的方式,均可将事件处理程序绑定到事件。,6.2 Response对象,6.2.1 Response对象概述 Response对象提供对当前页输出流的访问,Response对象可以动态地响应客户端的请求,并将动态生成的响应结果返回给客户端浏览器。Response对象可以向客户端浏览器发送信息,或者将访问者转移到另一个网址,传递页面的参数,还可以输出和控制Cookie信息等。,6.2.2 Response对象的常用属性和方法,Response对象的常用属性及说明,Response对象的

3、常用方法及说明,6.2.3 Response对象Write()方法应用,在代码文件夹下ch6_2中ResponseWrite.aspx 文件详细介绍了在按钮的Onclick事件中使用Write()方法将时间输出到客户端浏览器 。 在代码文件夹下ch6_2中Write.aspx 文件详细介绍了利用Write()方法除了可以输出提示信息、变量值外,还可以输出XHTML文本或JavaScript脚本等。,6.2.4 Response对象Redirect()方法的应用,在代码文件夹下ch6_2中Redirect.aspx 文件详细介绍了对象Redirect()方法的应用,6.3 Request对象,R

4、equest对象提供对当前页请求的访问,其中包括请求标题、Cookie、客户端证书、查询字符串等。通过Request对象还可以读取客户端浏览器已经发送的内容。,6.3.1 Request对象概述,Request对象是HttpRequest类的一个实例。当客户端从网站请求Web页时,Web服务器接收一个客户端的HTTP请求,客户端的请求信息会包装在Request对象中,这些请求信息包括请求报头(Header)、客户端的主机信息、客户端浏览器信息、请求方法(如POST、GET)和提交的窗体信息等。,6.3.2 Request对象的常用集合、属性和方法,HttpRequest对象的数据集合及说明,6

5、.3.3 Request对象简单代码示例,在代码文件夹下ch6_3中RequestForm.aspx实例程序使用Request对象的Form属性获取窗体变量x和y的值,在按钮的Click事件中进行相加并通过Lable1显示结果 。,6.3.4 使用QueryString数据集合实例,在代码文件夹下ch6_3中QueryString1.aspx ,QueryString2.aspx 文件,详细描述了当单击QueryString1.aspx页面上的链接后,页面重定向到QueryString2.aspx页面;在QueryString2.aspx页面中显示从QueryString1.aspx页面传递过

6、来的查询字符串数据信息。,综合使用ServerVariables和Browser数据集合实例,ServerVariables可很方便地取得服务器端或客户端的环境变量信息,如客户端的IP地址等;Browser用于判断用户的浏览器类型、版本等,以便根据不同的浏览器编写不同的网页。 具体实现请见代码文件夹下ch6_3中Request.aspx,6.4 Server对象,6.4.1 Server对象概述 Server对象又称为服务器对象,是HttpServerUtility类的一个实例,它用于封装服务器信息,定义一个与Web服务器相关的类,实现对服务器方法和属性的访问,如转换XHTML元素标志、获取网

7、页的物理路径等。,6.4.2 Server对象的常用属性和方法,Server对象的常用属性及说明,Server对象的常用方法及说明,6.4.3 Server对象对字符串编码实例,在该实例中单击“Student.aspx”链接时将丢失“张”后面的信息,而单击“Student.aspx(UrlEncode)链接”时,因使用了Server.UrlEncode()方法,所以不再丢失“张”后面的信息。 具体实现请见具体实现请见代码文件夹下ch6_4中Server.aspx。,6.4.4 Button按钮的跨网页提交实例,在Cross1.aspx中输入“用户名、密码”后单击“确定”按钮,此时页面提交到Cr

8、oss2.aspx,在该页面中显示Cross1.aspx中输入的数据信息。具体实现请见具体实现请见代码文件夹下ch6_4中Cross1.aspx 、 Cross2.aspx 文件。,6.5 状态管理概述,状态管理是用户对同一页或不同页的多个请求维护状态和页信息的过程。与所有基于 HTTP的技术一样,Web窗体页是无状态的,这意味着它们不自动显示序列中的请求是否全部来自相同的客户端,或者单个浏览器实例是否一直在查看页或站点。,6.5.1 ViewState,1设置页面是否保留视图状态 2使用视图状态存取数据 3视图状态的优缺点,6.5.2 HiddenField控件,HiddenField控件是

9、隐藏输入框的服务器控件,用于保存不必显示在页面上的且对安全性需求不高的数据。 HiddenField控件的作用简单地说是用于存储需要在向服务器的发送间保持的值,作为 元素呈现,并且通过添加runat=“server“就能使它成为标准的HTML服务器控件。,6.5.3 Cookie对象,1什么是Cookie对象 Cookie就是服务器暂存在计算机中的资料(文本文件),好让服务器用来辨认用户的计算机。 Cookie对象实际是System.Web命名空间中HttpCookie类的对象。Cookie对象为Web应用程序保存用户相关信息提供了一种有效的方法。,2Cookie对象相关知识,(1)Cooki

10、e只是一段字符串,并不能执行。 (2)大多数浏览器规定Cookie大小不超过4 KB,每个站点能保存的Cookie不超过20个,所有站点保存的Cookie总和不超过300个。 (3)除了Cookie外,几乎没有其他的方法在客户端的机器上写入数据(就连Cookie的写入操作也是浏览器进行的)。,(4)当用户的浏览器关闭对Cookie的支持,而不能有效地识别用户时,只需在web.config中加入以下语句。 (5)ASP.NET提供System.Web.HttpCookie类来处理Cookie,常用的属性是Value和Expires。,(6)每个Cookie一般都会有一个有效期限,当用户访问网站时

11、,浏览器会自动删除过期的Cookie。 (7)没有设置有效期的Cookie将不会保存到硬盘文件中,而是作为用户会话信息的一部分。,3Cookie对象实例,该实例主要利用Cookie确认用户是否已登录,其中Cookie.aspx页面只有在用户登录后才能显示。 具体实现请见代码文件夹下ch6_5中的Cookie.aspx文件。,6.5.4 Session对象,1什么是Session对象 Session(会话状态)是Web系统中最常用的状态,用于维护和当前浏览器实例相关的一些信息。 Session对象典型的应用有储存用户信息、多网页间信息传递、购物车等。,2Session对象常用的属性、方法与事件,

12、Session对象常用的属性及说明,Session对象常用的方法及说明,Session对象常用的方法及说明,Session对象的常用事件及说明,3与Cookie对象的联系,Cookie机制采用在客户端保持状态的方案,而Session机制采用的是在服务器端保持状态的方案。由于采用服务器端保持状态的方案在客户端也需要保存一个标识,即SessionId,所以Session机制可能需要借助于Cookie机制来达到保存标识的目的,但实际上它还有其他选择。,4Session对象相关知识,(1)Session对象的使用 (2)读取Session的值 (3)SessionID的存储模式 (4)Session的

13、存储方式 (5)Session的使用范围与大小限制 (6)Session的生命周期 (7)Session的失效,5Session对象实例,本实例主要通过Session对象在页面之间实现传值功能。 具体实现请见代码文件夹下ch6_5中SessionPage1.aspx 和SessionPage2.aspx 文件,6.5.5 Application对象,1什么是Application对象 Application对象是HttpApplicationState类的一个实例。Application对象用来存储变量或对象,以便在网页再次被访问时(不管是不是同一个连接者或访问者),所存储的变量或对象的内容还

14、可以被重新调出来使用,也就是说,Application对于同一网站来说是公用的,可以在各个用户间共享。,2Application对象相关知识,每个Application对象变量都是Application集合中的对象,由Application对象统一管理,语法如下。 Application“变量“=“变量内容“; Application(“对象名“)=Server.CreateObject(Progld),3Application对象的常用属性、方法和事件,Application对象的常用属性及说明,4Application对象实例,统计网站在线人数并在页面呈现网站在线人数。这是一个很经典的问题

15、,主要考虑3个方面:初始化计数器;当一个用户访问网站时,计数器加1;当一个用户离开网站时,计数器减1。 具体实现请见代码文件夹下ch6_5中Global.asax、Application.aspx文件,6.6 Cache对象,6.6.1 Cache对象概述 Cache对象用于在HTTP请求期间保存页面或数据。该对象的使用可以极大地提高整个应用程序的效率,常用于将频繁访问的大量服务器资源存储在内存中,当用户发出相同的请求后,服务器不必再次处理而是将Cache中保存的信息返回给用户,节省了服务器处理请求的时间。其生存期依赖于该应用程序的生存期。,6.6.2 Cache对象的常用属性和方法,Cach

16、e对象的常用属性及说明,Cache对象的常用方法及说明,6.6.3 Cache对象实例,该实例使用Cache对象的Insert方法插入缓存对象,并将其在页面上显示出来 .具体实现请见代码文件夹下ch6_6中Cache-1.aspx文件,Cache对象实例,该实例使用Insert方法在按钮事件中加入Cache缓存变量,使用GetEnumerator方法创建一个IDictionaryEnumerator枚举对象CacheEnum。通过枚举数在整个缓存中运行一遍,将各缓存项的值转换成字符串,然后将所有Cache缓存变量值输出到页面显示。具体实现请见代码文件夹下ch6_6中Cache-3.aspx文件 。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号