ASPNET内置对象Word文档下载推荐.docx
《ASPNET内置对象Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《ASPNET内置对象Word文档下载推荐.docx(34页珍藏版)》请在冰豆网上搜索。
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
页面第二次或第二次以上加载!
IsValid属性
IsValid属性用来获取一个布尔值,该值指示页验证是否成功,如果页验证成功,则为true;
否则为false。
一般在包含有验证服务器控件的页面中使用,只有在所有验证服务器控件都验证成功时,IsValid属性的值才为true。
privatevoidButton_Click(ObjectSender,EventArgse)
{
if(Page.IsValid==true)
//也可写成if(Page.IsValid)
mylabel.Text="
您输入的信息通过验证!
}
else
您的输入有误,请检查后重新输入!
}
二.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的代码如下:
<
html>
<
head>
title>
使用POST传送数据<
/title>
/head>
body>
formmethod="
post"
action="
do.aspx"
>
请输入您的名字:
inputtype="
text"
name="
mingzi"
br>
submit"
value="
提交"
/form>
/body>
/html>
在do.aspx中将使用Request.Form["
]来获取用户输入的名字,do.aspx的代码如下:
privatevoidPage_Load(Objecto,EventArgse)
//页面加载后即显示表单数据
stringstrmessage="
您的名字为:
//定义字符串变量并赋初值
strmessage+=Request.Form["
];
//把表单数据串接到变量
Response.Write(strmessage);
//输出变量
QueryString数据集合
可以利用QueryString集合来获取客户端通过GET方法传送的表单数据,如果把form.htm中表单的method属性值由POST改为GET,则在do.aspx中就需要通过Request.QueryString["
]来获取输入的名字。
因为GET方法传送数据有一定的限制并且不安全,所以表单一般不使用GET方法。
if(Request.QueryString["
].ToString()!
="
)
Response.Write("
您的名字是:
+Request.QueryString["
].ToString());
在Web应用程序开发中,QueryString常用来获取URL查询字符串中变量的值,这与使用GET方法传送表单数据的情况一样。
例如,客户端使用如下地址请求:
http:
//localhost/doit.aspx?
name=zhangsan&
sex=nan
或打开如下的超级链接:
a href="
sex=nan"
doit.aspx<
/a>
在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属性获取数据
通过该属性,读取<
Form>
/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(变量数据或字符串)
%=…%>
scriptlanguage=javascript>
alert('
欢迎学习ASP.NET'
)<
/script>
script>
window.open('
WebForm2.aspx'
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.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