免费预览已结束,剩余58页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章ASP.NTE常用组件对象,第6章ASP.NET常用组件对象,本章主要讲解由ASP继承而来的内建组件对象,就包括以下主要内容:Response、Request对象常用属性与方法Application对象存储数据及其事件和方法SESSION对象在Web程序设计中的应用Server对象属性与方法,第6章ASP.NTE常用组件对象,内嵌对象不同于正常的对象。在利用内嵌对象的脚本时,不需要首先创建一个它的实例。在整个网站应用中内嵌对象的所有方法、集合以及属性都是自动可访问的。,第6章ASP.NET常用组件对象,第6章ASP.NTE常用组件对象,6.1Response对象目录,Response对象用来访问服务器端所创建的并发回到客户端的响应信息。为脚本提供HTTP变量,指明服务器和服务器的功能和关于发回浏览器的内容的信息以及任何将为这个域而存放在浏览器里新的cookie。,第6章ASP.NTE常用组件对象,6.1.1利用Response对象显示信息,Response对象用于控制服务器输出信息到客户端。包括直接发送信息给浏览器、重定向浏览器到另一个URL(UniformResourceLocator,统一资源定位器)或设置cookie的值。,下面例子演示了该对象的使用方法:RESPONSE对象示例);Response.Write(Web程序设计);Response.Write();Response.Write();%,第6章ASP.NTE常用组件对象,其语法形式如下:Response.WriteFile(filename,offset,length),Response对象还提供了WriteFile方法,RESPONSELogin:);Response.Write();Response.Write();Response.WriteFile(FileHandle,StartPos,FileSize);MyFileStream.Close();%,第6章ASP.NTE常用组件对象,本例中使用的是是因为在本例中使用了FileStream类。FileStream类提供对文件的访问,包括标准输入、输出和错误设备。其构造函数为:,第6章ASP.NTE常用组件对象,6.1.2利用Response对象重定向浏览器,Response对象有一个Redirect方法,该方法可将客户端浏览器导航到一个新的URL地址。该方法的语法是:Response.Redirect(NewUrl);,重定向浏览器示例privatevoidbtnOK_Click(objectsender,System.EventArgse)if(Page.IsValid)if(Text1.Text=ok)Response.Redirect();elselblMsg.Text=用户名不对!;重定向浏览器示例,用户名:,第6章ASP.NTE常用组件对象,6.1.3Response对象Cookies属性的应用,1.什么是Cookie一个字符串或一个标志。在一个网页被加载的时候,一个Cookie就存入客户的计算机硬盘上了,可供其它网页以后检索。,第6章ASP.NTE常用组件对象,Response对象的Cookies集合用于创建与修改cookie的值,如果指定的cookie不存在,则创建它,如果存在,则修改它。其使用语法如下:Response.Cookies(cookie)(key)|.attribute=value;,2.利用Response对象创建与修改Cookie的值,下面通过Response对象来创建一个cookie,其脚本程序源代码如下所示:privatevoidbtsubmit_Click(objectsender,System.EventArgse)/创建一个新Cookie,其cookie名来自于NameField.TextHttpCookieMyCookie=newHttpCookie(NameField.Text);DateTimenow=DateTime.Now;/设定Cookie的值MyCookie.Value=ValueField.Text;/设定cookie生命MyCookie.Expires=now.AddHours(1);/添加CookieResponse.Cookies.Add(MyCookie);/给用户提示Response.Write(Cookie写入成功);利用Response对象把cookie值写入客户的计算机测试Cookie名称:Cookie值:,第6章ASP.NTE常用组件对象,6.2Request对象,Request对象最重要的作用是作为一个用户的HTTP请求的信息保存区域,其中包括关于浏览器的有价值的信息以及通过HTTP的GET或POST传送的数据。6.2.1利用Request对象获取表单提交信息6.2.2利用Request对象获取服务器变量值6.2.3利用Request对象获取cookies值6.2.4利用Request对象获取客户端浏览器的信息6.2.5Request对象常用属性与方法,第6章ASP.NTE常用组件对象,6.2.1利用Request对象获取表单提交信息,1.POST方式如果一个页面通过POST方式来传送数据,则在该Web页面或接收数据的Web页面通过Request对象的FORM属性集合来读取所传送的数据。,第6章ASP.NTE常用组件对象,6.2.1利用Request对象获取表单提交信息,1.POST方式例如在一个Web页面上通过下面表单来获取信息:用户名:密码:,第6章ASP.NTE常用组件对象,则在另一个Web页面可通过如下方法来获取用户所填写的信息:strName=Request.Formusername;strPassword=Request.Formpassword;或者:strName=Request.Form1;strPassword=Request.Form2;,1.POST方式,request对象测试用户名:请选择您的性别:男女密码:,接收数据的Web页面程序源代码如下:(其程序名为w6-6.aspx)request对象测试,第6章ASP.NTE常用组件对象,用户名:获取用户所填写的信息:strName=Request.QueryStringusername;strPassword=Request.QueryStringpassword;,2.GET方式,第6章ASP.NTE常用组件对象,当使用GET方式传送数据时,在接收页的地址栏是以明文方式显示各参数及参数值,且每一个参数之间用“”连接。如本例中传送的值是:http:/localhost/test/w6-6x.aspx?username=lius+=BrowserCapabilities+;s+=Type=+Request.Browser.Type+;s+=Name=+Request.Browser.Browser+;s+=Version=+Request.Browser.Version+;s+=MajorVersion=+Request.Browser.MajorVersion+;s+=MinorVersion=+Request.Browser.MinorVersion+;s+=Platform=+Request.Browser.Platform+;s+=IsBeta=+Request.Browser.Beta+;s+=IsCrawler=+Request.Browser.Crawler+;s+=IsAOL=+Request.Browser.AOL+;s+=IsWin16=+Request.Browser.Win16+;s+=IsWin32=+Request.Browser.Win32+;s+=SupportsFrames=+Request.Browser.Frames+;s+=SupportsTables=+Request.Browser.Tables+;s+=SupportsCookies=+Request.Browser.Cookies+;s+=SupportsVBScript=+Request.Browser.VBScript+;s+=SupportsJavaScript=+Request.Browser.JavaScript+;s+=SupportsJavaApplets=+Request.Browser.JavaApplets+;s+=SupportsActiveXControls=+Request.Browser.ActiveXControls+;lbdisp.Text=s;,第6章ASP.NTE常用组件对象,6.3Application对象目录,Application对象可以产生一个全部的Web应用程序都可以存取的变量,这个变量的可视范围涵盖全部的使用者.,第6章ASP.NTE常用组件对象,6.3Application对象目录,下面是利用Application对象的应用:一个Application变量可以用来在每个主页上显示瞬态信息。Application可以用来记录广告条被点击的时间和次数。Application可以从数据库中读取数据.的网站的数据库中接受销售品目录然后利用application变量显示在多个主页上。一个Application变量可以用来统计目前上站人数。一个application变量可以用于网站上不同用户间的通讯.,第6章ASP.NTE常用组件对象,6.3.1Application对象存储数据,Application对象正确的对象类别名称是HttpApplication,每个Application对象变量都是Application对象集合中的对象之一,由Application对象统一管理。使用Application对象变量的语法如下所示:Application变量=变量内容,下面是一个简单Web应用程序:Application示例目前在线人数是:,第6章ASP.NTE常用组件对象,6.3.2Application对象的的属性,1.AllKeys属性使用户能够检索Application对象包含的所有项目名。例如:stringStateVarsApplication.Count;StateVars=Application.AllKeys;该示例是用应用程序状态集合中的所有对象名来填充字符串数组StateVars。,第6章ASP.NTE常用组件对象,6.3.2Application对象的的属性,2.Contents属性返回this指针,主要是为了和asp兼容而保留。下面的示例创建一个新的HttpApplicationState对象,此对象用于访问应用程序状态集合中的对象名。HttpApplicationStateAppState2;AppState2=Application.Contents;stringStateVarsAppState2.Count;StateVars=AppState2.AllKeys;,第6章ASP.NTE常用组件对象,3.Count属性返回一个Application对象所包含的项目数量。例如:if(Application.Count5)/.语句块1该示例仅在集合中的对象数超过5时执行语句块1。,6.3.2Application对象的的属性,第6章ASP.NTE常用组件对象,4.Item属性通过名字访问一个Application对象包含的项目值,这是Application对象最常用的属性。Application变量名=要保存对象例如:ApplicationonlineNumber=Convert.ToInt32(ApplicationonlineNumber)+1;,6.3.2Application对象的的属性,第6章ASP.NTE常用组件对象,5.StaticObjects属性下面的示例获取所有应用程序对象并将其放入一个HttpStaticObjectsCollection变量,它仅在对象数大于0时才执行例程,并执行语句块1。,privatevoidPage_Load(objectsender,System.EventArgse)inti;stringtStr;stringsStr;stringstrArray;HttpStaticObjectsCollectionObCol;if(!IsPostBack)/浏览器第一次调用本页时初始化变量/为防止其他变量干扰,使用前清掉所有的保存变量Application.RemoveAll();for(i=1;i采用item属性显示);strArray=Application.AllKeys;for(i=1;i含有object标识:+ObCol.Count+个);Appliction对象试验Appliction对象试验,第6章ASP.NTE常用组件对象,6.3.3Application对象的方法,1.Add方法将新的对象添加到HttpApplicationState集合中。其使用语法如下:Application.Add(name,value);例如:Application.Add(“string1”,”test”);,第6章ASP.NTE常用组件对象,6.3.3Application对象的方法,2.Clear方法从HttpApplicationState集合中删除所有对象。下面的示例从集合中删除所有ApplicationState变量。Application.Clear();,第6章ASP.NTE常用组件对象,3.Get方法通过名称或索引值来获取HttpApplicationState对象。ObjectMyObject;MyObject=Application.Get(MyAppVar1);它等价于:MyObject=Application“MyAppVar1”;MyObject=Application0;,6.3.3Application对象的方法,第6章ASP.NTE常用组件对象,4.Lock方法锁定对HttpApplicationState变量的访问以促进访问同步。这个方法主要是用来防止对Application的变量操作过程中,其他并发程序可能造成的影响。,第6章ASP.NTE常用组件对象,5.Unlock方法取消锁定对HttpApplicationState变量的访问以促进访问同步,释放资源以供其他页面使用。,privatevoidPage_Load(objectsender,System.EventArgse)Application.Lock();Applicationcounter=Convert.ToInt32(Applicationcounter)+1;Application.UnLock();Application对象方法试验Application对象Lock方法试验你是第位访问者!,第6章ASP.NTE常用组件对象,6.3.4Application对象的事件,Application_onstart事件Application_onend事件Application_BeginRequest事件Application_EndRequest事件,第6章ASP.NTE常用组件对象,Global.asax文件包含响应ASP.NET或HTTP模块引发的应用程序级别事件的代码。Global.asax文件驻留在基于ASP.NET的应用程序的根目录中。在运行时,分析Global.asax文件并将其编译到一个动态生成的.NET框架类,该类是从HttpApplication基类派生的。配置Global.asax文件自身,以便自动拒绝对该文件的任何直接URL请求;外部用户不能下载或查看在其中编写的代码。,6.3.4Application对象的事件,protectedvoidApplication_Start(Objectsender,EventArgse)/这里的代码是是Application变量的起始代码protectedvoidApplication_BeginRequest(Objectsender,EventArgse)/这里的代码是是每个请求的ApplicationcodeprotectedvoidApplication_End(Objectsender,EventArgse)/这里的代码是把Application的所有变量都清除.,第6章ASP.NTE常用组件对象,6.4SESSION对象目录,Session类型的变量可以供这个用户在该Web应用的所有页面中共享数据;Session对象可以用来存储需要在服务器的多次请求-应答期间和对网页的请求期间进行维护的指定对话的信息。,第6章ASP.NTE常用组件对象,6.4.1Session对象的成员概述,1.Session对象的集合Contents:没有使用元素定义的存储于特定Session对象的所有变量的集合。StaticObject:使用元素定义的、存储于Session对象中的所有变量的集合。例:在default.asp中有如下赋值sessiona=asessionb=128sessionc=false则有contents集合,Session.SessionID示例Session.SessionID示例+Session.SessionID.ToString()+);%,第6章ASP.NTE常用组件对象,Contents.Remove(“变量名”):Session.contents集合中删除指定的变量Contents.Removeall():删除Session.contents集合中的所有变量Abandon():结束当前用户会话并且撤消当前Session对象。,3.Session对象的方法,第6章ASP.NTE常用组件对象,Session_OnStart事件Session_Onstart事件这个事件也必须定在Global.asa
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省连云港市东海高级中学2026届化学高二第一学期期末经典试题含答案
- 幕墙经理面试题目及答案
- 民兵招募面试题及答案
- 安徽省阜阳市临泉县一中2026届化学高一第一学期期末达标检测试题含解析
- 门店英文面试题及答案
- 2025年四川省事业单位聘用版合同书
- 2025合同协议安全生产责任书
- 2026届黑龙江省七台河市化学高一第一学期期末考试模拟试题含解析
- 国际贸易的变化趋势研究
- 内蒙古集宁市第一中学2026届化学高二第一学期期末综合测试试题含答案
- UL2251标准中文版-2017电动汽车的插头插座和耦合器UL中文版标准
- 2.1.1人类认识地球形状的过程课件
- 医院8S管理成果汇报
- 河南省洛阳市洛龙区2024-2025学年九年级上学期11月期中数学试题(无答案)
- 观众满意度评估
- 地陪服务合同
- 2024年新人教版七年级上数学全册教案
- 数通L2(HCS-Pre-Sales-IP)认证考试题库(含答案)
- 烧烤店食品安全管理制度
- 护理文件书写规范和分级护理制度解读
- 2022版新课标初中数学《数与代数、图形与几何》解读
评论
0/150
提交评论