ASPNET内置对象.docx

上传人:b****6 文档编号:4386340 上传时间:2022-12-01 格式:DOCX 页数:34 大小:41.41KB
下载 相关 举报
ASPNET内置对象.docx_第1页
第1页 / 共34页
ASPNET内置对象.docx_第2页
第2页 / 共34页
ASPNET内置对象.docx_第3页
第3页 / 共34页
ASPNET内置对象.docx_第4页
第4页 / 共34页
ASPNET内置对象.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

ASPNET内置对象.docx

《ASPNET内置对象.docx》由会员分享,可在线阅读,更多相关《ASPNET内置对象.docx(34页珍藏版)》请在冰豆网上搜索。

ASPNET内置对象.docx

ASPNET内置对象

(1)简述ASP.NET内置对象。

  答:

ASP.NET提供了内置对象有Page、Request、Response、Application、Session、Server、Mail和Cookies。

这些对象使用户更容易收集通过浏览器请求发送的信息、响应浏览器以及存储用户信息,以实现其他特定的状态管理和页面信息的传递。

  

(2)简述Response对象。

  答:

Response对象用来访问所创建的并客户端的响应,输出信息到客户端,它提供了标识服务器和性能的HTTP变量,发送给浏览器的信息和在cookie中存储的信息。

它也提供了一系列用于创建输出页面的方法,如无所不在的Response.Write方法。

  (3)简述Request对象。

  答:

Request对象是用来获取客户端在请求一个页面或传送一个Form时提供的所有信息,这包括能够标识浏览器和用户的HTTP变量,存储在客户端的cookie信息以及附在URL后面的值(查询字符串或页面中段中的HTML控件内的值)。

  (4)简述Application对象。

  答:

在环境下,Application对象来自HttpApplictionStat类。

它可以在多个请求、连接之间共享公用信息,也可以在各个请求连接之间充当信息传递的管道。

使用Application对象来保存我们希望传递的变量。

由于在整个应用程序生存周期中,Application对象都是有效的,所以在不同的页面中都可以对它进行存取,就像使用全局变量一样方便。

  (5)简述Session对象。

  答:

Session对象就是服务器给客户端的一个编号。

当一台WEB服务器运行时,可能有若干个用户浏览正在浏览这台服务器上的网站。

当每个用户首次与这台WWW服务器建立连接时,他就与这个服务器建立了一个Session,同时服务器会自动为其分配一个SessionID,用以标识这个用户的唯一身份。

特别说明的是Session对象的变量只是对一个用户有效,不同的用户的会话信息用不同的Session对象的变量存储。

在网络环境下Session对象的变量是有生命周期的,如果在规定的时间没有对Session对象的变量刷新,系统会终止这些变量。

  (6)简述Server对象。

  答:

Server对象提供对服务器上的方法和属性的访问。

其中大多数方法和属性是作为实用程序的功能服务的。

Server对象也是Page对象的成员之一,主要提供一些处理页面请求时所需的功能;例如建立COM对象、将字符串的编译码等工作。

  (7)简述Cookie对象。

  答:

cookie是一小块由浏览器存贮在客户端系统上(硬盘)的文本,是一种标记。

由WEB服务器嵌入用户浏览器中,以便标识用户,且随同每次用户请求发往WEB服务器。

Cookies的值比ASP.NET其他集合(例如Form和ServerVariables)的值要复杂得多。

  (8)简述Mail对象。

  答:

ASP.NET被赋予了一个发送Email的新对象,名为SmtpMail,实际上Mail对象由System.Web.Mail类库实现(ClassLibrary)。

这个类库由MailMessage对象、SmtpMail对象、MailFormat对象和MailAttachment对象组成,它们相互合作,完成E-mail的发送。

  (9)简述GET传送方式。

*********************

ASP.NET中常用的内置对象

(一)

ASP.NET中常用的内置对象及功能说明如下所示:

对象名         功 能 说 明

Page           用于操作整个页面

Response         用于向浏览器输出信息

Request         用于获取来自浏览器的信息

Server                   提供服务器端的一些属性和方法

Application               用于共享多个会话和请求之间的全局信息

Session                  用于存储特定用户的会话信息

Cookies                  用于设置或获取Cookie信息

一..Page对象

Page对象是由System.Web.UI命名空间中的Page类来实现的,Page类与扩展名为.aspx的文件相关联,这些文件在运行时被编译为Page对象,并缓存在服务器内存中。

Page对象提供的常用属性、方法及事件如下所示:

名 称               功 能 说 明

IsPostBack属性    获取一个值,该值表示该页是否正为响应客户端回发而加载

IsValid属性      获取一个值,该值表示页面是否通过验证

Application属性    为当前Web请求获取Application对象。

Request属性      获取请求的页的HttpRequest对象

Response属性     获取与Page关联的HttpResponse对象。

该对象使您得以将HTTP响应数据发送到客户端,并包含有关该响应的信息。

Session属性      获取ASP.NET提供的当前Session对象。

Server属性      获取Server对象,它是HttpServerUtility类的实例。

DataBind方法     将数据源绑定到被调用的服务器控件及其所有子控件

RegisterClientScriptBlock方法  向页面发出客户端脚本块

Init事件       当服务器控件初始化时发生

Load事件       当服务器控件加载到Page对象中时发生

Unload事件      当服务器控件从内存中卸载时发生

1.IsPostBack属性 

IsPostBack属性用来获取一个布尔值,如果该值为true,则表示当前页是为响应客户端回发(例如单击按钮)而加载,否则表示当前页是首次加载和访问。

privatevoidPage_Load(objectsender,System.EventArgse)

{

 if(!

Page.IsPostBack)

 {

 Label1.Text="页面第一次加载!

";

 }

 else

 {

 Label1.Text="页面第二次或第二次以上加载!

";

   }

}

IsValid属性 

IsValid属性用来获取一个布尔值,该值指示页验证是否成功,如果页验证成功,则为true;否则为false。

一般在包含有验证服务器控件的页面中使用,只有在所有验证服务器控件都验证成功时,IsValid属性的值才为true。

privatevoidButton_Click(ObjectSender,EventArgse)

   {

       if(Page.IsValid==true) //也可写成if(Page.IsValid)

       {

           mylabel.Text="您输入的信息通过验证!

";

       }

       else 

       {

           mylabel.Text="您的输入有误,请检查后重新输入!

";

       } 

   }

二.Request对象

Request对象是由类System.Web.HttpRequest来实现的。

当客户请求ASP.NET页面时,所有的请求信息,包括请求报头、请求方法、客户端基本信息等都被封装在Request对象中,利用Request对象就可以读取这些请求信息。

Request对象常用的属性和方法如下所示。

名 称            功 能 说 明

Cookies属性          获取客户端发送的Cookie的集合

Form属性           获取表单变量的集合

QueryString属性        获取HTTP查询字符串变量集合

Form表单数据提交到服务器的方式有两种:

Get和Post方式。

i. .get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。

post是通过HTTPpost机制,将表单内各个字段与其内容放置在HTMLHEADER内一起传送到ACTION属性所指的URL地址。

用户看不到这个过程。

 

ii. .对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。

iii. get传送的数据量较小,不能大于2KB。

post传送的数据量较大,一般被默认为不受限制。

但理论上,IIS4中最大量为80KB,IIS5中为100KB。

iv. get安全性非常低,post安全性较高。

Form数据集合

使用Request的Form集合来获取客户端通过POST方法传送的表单数据,例如,服务器上有两个网页form.htm和do.aspx,form.htm中包含一个表单,表单传送数据的方法为POST,并且表单提交到同一目录下的do.aspx。

form.htm的代码如下:

   

   使用POST传送数据

   

   

   

   请输入您的名字:


   

   

   

   

在do.aspx中将使用Request.Form["mingzi"]来获取用户输入的名字,do.aspx的代码如下:

privatevoidPage_Load(Objecto,EventArgse)  

//页面加载后即显示表单数据

   {

       stringstrmessage="您的名字为:

"; //定义字符串变量并赋初值

       strmessage+=Request.Form["mingzi"]; //把表单数据串接到变量

       Response.Write(strmessage);//输出变量

   }

QueryString数据集合 

可以利用QueryString集合来获取客户端通过GET方法传送的表单数据,如果把form.htm中表单的method属性值由POST改为GET,则在do.aspx中就需要通过Request.QueryString["mingzi"]来获取输入的名字。

因为GET方法传送数据有一定的限制并且不安全,所以表单一般不使用GET方法。

privatevoidPage_Load(objectsender,System.EventArgse)

  {

   if(Request.QueryString["mingzi"].ToString()!

="")

    Response.Write("您的名字是:

"+Request.QueryString["mingzi"].ToString());

  }

在Web应用程序开发中,QueryString常用来获取URL查询字符串中变量的值,这与使用GET方法传送表单数据的情况一样。

例如,客户端使用如下地址请求:

 http:

//localhost/doit.aspx?

name=zhangsan&sex=nan    

或打开如下的超级链接:

//localhost/doit.aspx?

name=zhangsan&sex=nan">doit.aspx

在doit.aspx中就可以使用Request.QueryString["name"]和Request.QueryString["sex"]来获取相应的值zhangsan和nan。

******************************

本想写一篇总结ASP.NET内置对象的文章,结果发现网上有篇不错的,就转了过来

ASP.NET的内置对象介绍 

1.Response 

2.Request 

3.Server 

4.Application 

5.Session 

6.Cooki 

Request对象主要是让服务器取得客户端浏览器的一些数据,包括从HTML表单用Post或者GET方法传递的参数、Cookie和用户认证。

因为Request对象是Page对象的成员之一,所以在程序中不需要做任何的声明即可直接使用; 

其类名为HttpRequest 

属性很多,但方法很少,只有一个BinaryRead() 

1.使用Request.Form属性获取数据 

通过该属性,读取

之间的表单数据.注意:

提交方式要设置为“Post”。

 

与Get方法相比较,使用Post方法可以将大量数据发送到服务器端 

2.利用Request.QueryString属性获取数据 

Request对象的QuerySting属性可以获取HTTP查询字符串变量集合。

通过该属性,我们可以读取地址信息http:

//localhost/aaa.aspx?

uid=tom&pwd=abc 其中标识为红色部分的数据. 

注意:

提交方式要设置为“Get” 

3.问题:

Request.Form用于表单提交方式为Post的情况,而Request.QueryString用于表单提交方式为Get的情况,如果用错,则获取不到数据。

 

解决方法:

利用Request(“元素名”)来简化操作。

 

4.Request.ServerVariables("环境变量名称") 

类似的还有:

UserHostAddress,Browser,Cookies,ContentType,IsAuthenticated 

Item,Params 

Response对象用语输出数据到客户端,包括向浏览器输出数据、重定向浏览器到另一个URL或向浏览器输出Cookie文件。

 

其类名为httpResponse 

属性和方法 

Write()向客户端发送字符串信息 

BufferOutPut属性是否使用缓存 

Clear()清除缓存 

Flush()强制输出缓存的所有数据 

Redirect()网页转向地址 

End()终止当前页的运行 

WriteFile()读取一个文件,并且写入客户端输出流 

(实质:

打开文件,并且输出到客户端。

) 

1.Response.Write变量数据或字符串 

Response.Write(变量数据或字符串) 

<%=…%> 

Response.Write("alert('欢迎学习ASP.NET')") 

Response.Write("") 

2.Response对象的Redirect方法将客户端浏览器重定向到另外的URL上,即跳转到另一个网页。

 

例如:

 

Response.Redirect(" 

3.Response.End()终止当前页的运行 

4.Response.WriteFile(FileName) 

其中:

 

FileName指代需向浏览器输出的文件的文件名 

Server对象提供对服务器上的方法和属性进行的访问.其类名称是HttpServerUtility. 

Server对象的主要属性有:

 

MachineName:

获取服务器的计算机名称。

 

ScriptTimeout:

获取和设置请求超时(以秒计)。

 

方法名称说明 

CreateObject创建COM对象的一个服务器实例。

 

Execute执行当前服务器上的另一个aspx页,执行完该页后再返回本页继续执行 

HtmlEncode对要在浏览器中显示的字符串进行HTML编码并返回已编码的字符串。

 

HtmlDecode对HTML编码的字符串进行解码,并返回已解码的字符串。

 

MapPath返回与Web服务器上的指定虚拟路径相对应的物理文件路径。

 

Transfer终止当前页的执行,并为当前请求开始执行新页。

 

UrlEncode将代表URL的字符串进行编码,以便通过URL从Web服务器到客户端进行可靠的HTTP传输。

 

UrlDecode对已被编码的URL字符串进行解码,并返回已解码的字符串。

 

UrlPathEncode对URL字符串的路径部分进行URL编码,并返回已编码的字符串。

 

编码:

 

Server.HtmlEncode(“HTML代码”) 

解码:

 

Server.HtmlDecode(“已编码的HTML”) 

1.Server对象的MapPath方法将虚拟路径或相对于当前页的相对路径转化为Web服务器上的物理文件路径。

 

语法:

Server.MapPath(“虚拟路径”) 

StringFilePath 

FilePath=Server.MapPath(“/”) 

Response.Write(FilePath) 

Application对象在实际网络开发中的用途就是记录整个网络的信息,如上线人数、在线名单、意见调查和网上选举等。

在给定的应用程序的多有用户之间共享信息,并在服务器运行期间持久的保存数据。

而且Application对象还有控制访问应用层数据的方法和可用于在应用程序启动和停止时触发过程的事件。

 

1.使用Application对象保存信息 

使用Application对象保存信息 

Application(“键名”)=值 

或 

Application(“键名”,值) 

获取Application对象信息 

变量名=Application(“键名”) 

或:

变量名=Application.Item(“键名”) 

或:

变量名=Application.Get(“键名”) 

更新Application对象的值 

Application.Set(“键名”,值) 

删除一个键 

Application.Remove(“键名”,值) 

删除所有键 

Application.RemoveAll() 

或Application.Clear() 

2.有可能存在多个用户同时存取同一个Application对象的情况。

这样就有可能出现多个用户修改同一个Application命名对象,造成数据不一致的问题。

 

HttpApplicationState类提供两种方法Lock和Unlock,以解决对Application对象的访问同步问题,一次只允许一个线程访问应用程序状态变量。

 

关于锁定与解锁 

锁定:

Application.Lock() 

访问:

Application(“键名”)=值 

解锁:

Application.Unlock() 

注意:

Lock方法和UnLock方法应该成对使用。

 

可用于网站访问人数,聊天室等设备 

3.使用Application事件 

在ASP.NET应用程序中可以包含一个特殊的可选文件——Global.asax文件,也称作ASP.NET应用程序文件,它包含用于响应ASP.NET或HTTP模块引发的应用程序级别事件的代码。

 

Global.asax文件提供了7个事件,其中5个应用于Application对象 

事件名称说明 

Application_Start在应用程序启动时激发 

Application_BeginRequest在每个请求开始时激发 

Application_AuthenticateRequest尝试对使用者进行身份验证时激发 

Application_Error在发生错误时激发 

Application_End在应用程序结束时激发 

Session即会话,是指一个用户在一段时间内对某一个站点的一次访问。

 

Session对象在.NET中对应HttpSessionState类,表示“会话状态”,可以保存与当前用户会话相关的信息。

 

Session对象用于存储从一个用户开始访问某个特定的aspx的页面起,到用户离开为止,特定的用户会话所需要的信息。

用户在应用程序的页面切换时,Session对象的变量不会被清除。

 

对于一个Web应用程序而言,所有用户访问到的Application对象的内容是完全一样的;而不同用户会话访问到的Session对象的内容则各不相同。

Session可以保存变量,该变量只能供一个用户使用,也就是说,每一个网页浏览者都有自己的Session对象变量,即Session对象具有唯一性。

 

(1)将新的项添加到会话状态中 

语法格式为:

 

Session("键名")=值 

或者 

Session.Add("键名",值) 

(2)按名称获取会话状态中的值 

语法格式为:

 

变量=Session("键名") 

或者 

变量=Session.Item("键名") 

(3)删除会话状态集合中的项 

语法格式为:

 

Session.Remove("键名") 

(4)清除会话状态中的所有值 

语法格式为:

 

Session.RemoveAll() 

或者 

Session.Clear() 

(5)取消当前会话 

语法格式为:

 

Session.Abandon() 

(6)设置会话状态的超时期限,以分钟为单位。

 

语法格式为:

 

Session.TimeOut=数值 

Global.asax文件中有2个事件应用于Session对象 

事件名称说明 

Session_Start在会话启动时激发 

Session_End在会话结束时激发 

Cookie就是Web服务器保存在用户硬盘上的一段文本。

Cookie允许一个Web站点在用户的电脑上保存信息并且随后再取回它。

信息的片断以‘键/值’对的形式存储。

 

Cookie是保存在客户机硬盘上的一个文本文件,可以存储有关特定客户端、会话或应用程序的信息,在.NET中对应HttpCookie类。

 

有两种类型的Cookie:

会话Cookie(SessionCookie)和持久性Cookie。

前者是临时性的,一旦会话状态结束它将不复存在;后者则具有确定的过期日期,在过期之前Cookie在用户的计算机上以文本文件的形式存储。

 

在服务器上创建并向客户端输出Cookie可以利用Response对象实现。

 

Response对象支持一个名为Cookies的集合,可以将Cookie对象添加到该集合中,从而向客户端输出Cookie。

 

通过Request对象的Cookies集合来访问Cookie

**********************

本章主要介绍ASP.NET的内置对象及ASP.NET应用程序的配置,并在最后一节介绍ASP.NET网站的预编译和编译。

ASP.NET的内置对象包括Request、Resp

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1