第04章 內(nèi)置對(duì)象_第1頁(yè)
第04章 內(nèi)置對(duì)象_第2頁(yè)
第04章 內(nèi)置對(duì)象_第3頁(yè)
第04章 內(nèi)置對(duì)象_第4頁(yè)
第04章 內(nèi)置對(duì)象_第5頁(yè)
已閱讀5頁(yè),還剩70頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第4章內(nèi)部對(duì)象

講解提綱

4.1ASP.NET內(nèi)部對(duì)象概述

4.2Page對(duì)象

4.3Request對(duì)象

4.4Response對(duì)象

4.5HttpCookie對(duì)象

4.6Session對(duì)象

4.7Application對(duì)象

4.8Server對(duì)象

4.9Mail對(duì)象

本章要點(diǎn)::

?利用Request對(duì)象的QueryString獲取方法獲取標(biāo)識(shí)在七RL

后面的信息

?利用Request對(duì)象的ServerVariables獲取方法獲取客戶端

IP地址等環(huán)境變量

?利用Response對(duì)象的Write方法輸出信息及它的省略用法

?掌握Response對(duì)象的Redirect方法

?利用Response對(duì)象的Cookies方法設(shè)置Cookies的值,利用

Request對(duì)象的Cookies獲取方法獲取Cookies的值。

?利用Session對(duì)象保存信息

?利用Application對(duì)象保存信息

?掌握Server對(duì)象的的HTMLencode、Mappath和Execute方

?掌握發(fā)送E-mail的一般方法

4.1ASP.NET內(nèi)部對(duì)象概述

?對(duì)象其實(shí)就是可以重用的代碼片斷,類是對(duì)象的定義,

對(duì)象是類的實(shí)例。

?對(duì)象一般有屬性、方法、事件。

?ASP.NET能夠利用成千上萬的內(nèi)置對(duì)象。本質(zhì)上前

面講的內(nèi)置函數(shù)、Web控件也都可以看作內(nèi)置對(duì)象,

都是類實(shí)現(xiàn)的。

?本章就講解其中常用的幾個(gè)內(nèi)部對(duì)象,包括Page、

Request、Response、HttpCookie>Session>

Application>Server>Mail

,NET框架

.NET框架(.NETFramework)

基礎(chǔ)類庫(kù)(BaseClassLibrary)

Windows操作系統(tǒng)

內(nèi)部對(duì)象和其它部分的關(guān)系

r

內(nèi)部對(duì)象

.NET類庫(kù)

內(nèi)部對(duì)象簡(jiǎn)要說明

對(duì)象功能

Page頁(yè)面對(duì)象,用于整個(gè)頁(yè)面的操作

Request從客戶端獲取信息

Response向客戶端輸出信息

HttpCookie用于保存Cookie信息

Session存儲(chǔ)特定用戶的信息

Application存儲(chǔ)同一個(gè)應(yīng)用程序中的所有用戶之間的

共享信息

Server創(chuàng)建COM組件和進(jìn)行有關(guān)設(shè)置

Mail在線發(fā)送E-mail

4.2Page對(duì)象

?由System.Web.ULPage類實(shí)現(xiàn),命名空間

System.Web.UI

?屬性:

>IsPostBack

>IsValid

?方法:

>DataBind(數(shù)據(jù)綁定)

?事件:

>Load(頁(yè)面裝載)

???

IsPostBack示例

|cscriptlanguage="YB"runar=r,server^

Suhpage_load(SenderAsObject.,EAsEventArgs)

3IfPage.IsPostBack=TrueThen

4Message.Text=user_naine.text&"圜好”

5Else

6message.Text=”您還出百提交”

7EndIf

8EndSub

q</script>

10

U<body>

12<h4align=rrcenrerr,>IsPostBack示例</h4>

13<formrunat=3erver>

14姓名〈asp:textboxid=rruser_naLnierrnmat=,r5erverrr/>

15<a33bliceontexc="提交"rimat.=,rserver"/>

16<p><asp:labelid="Me3sagerrrunat=server/>

17</form>

18</body>

直</htinl>

網(wǎng)頁(yè)的工作原理

發(fā)出請(qǐng)求(Request)

、

客戶產(chǎn)NLI

服務(wù)器端

發(fā)回網(wǎng)MfResponse)

4.3Request對(duì)象

?在第3章講解了如何獲取客戶填寫在表單中的信息,本節(jié)利用

Request對(duì)象還可以獲取更多的信息。

?當(dāng)客戶端發(fā)出請(qǐng)求執(zhí)行程序時(shí),CLR會(huì)將客戶端的請(qǐng)求

信息包含在Request對(duì)象中。這些請(qǐng)求信息包括請(qǐng)求報(bào)頭,客

戶端的基本信息(如瀏覽器類型,瀏覽器版本號(hào),用戶所用的

語言以及編碼方式等),請(qǐng)求方法(如post,get),參數(shù)名,

參數(shù)值等。

Request對(duì)象可以從一個(gè)HTTP請(qǐng)求中讀取數(shù)據(jù),這個(gè)對(duì)象允許

服務(wù)器腳本與客戶端之間交換數(shù)據(jù),它表示了某個(gè)特定用戶的

當(dāng)前請(qǐng)求,每個(gè)ASP頁(yè)都有唯一的Request對(duì)象,該對(duì)象包含

了FORM中添入的信息,瀏覽器信息以及其他通過超文本傳輸

協(xié)議而收集到的信息內(nèi)容。

4.3.1Request對(duì)象簡(jiǎn)介”

?由System.Web.HttpRequest類實(shí)現(xiàn)

?命名空間:System.Web

?語法為:Request[.數(shù)據(jù)集合|屬性|,方法](變量或是字符串)

?數(shù)據(jù)集合(獲取方法):

>QueryString>Form>Cookies>ServerVariables>

Clientcertificate、Browser

?屬性:

>TotalBytes

?方法:

>BinaryRead

4.3.2使用QueryString數(shù)據(jù)集合::

?QueryString可以獲取標(biāo)識(shí)在URL后面的所有返回

的變量及其值。例如,當(dāng)客戶端送出如下的請(qǐng)求時(shí),

QueryString將會(huì)得到name與age兩個(gè)變量的值。

>http:///temp.aspx?name=白蕓&age=22

?后面可以有多個(gè)變量參數(shù),參數(shù)之間用&連接。

QueryString數(shù)據(jù)集合示例(1)

?1|cscriptlanguage=rrVBtrrunat=Trservexrr>

2Subpage」。ad(SenderAsObject,EAsEventArgs)

3Dimuser_nameAsStrina

?定義一個(gè)甬尸名變量

4DimageAsInteger

,定義一個(gè)年齡變量

5userename=Request.QueryString(iruser__naiiie")

6age=Request.QueryString(rrager,)

7Message.Text=user_name&"您好”

8Message.Text=Message.Text&",恁的年齡是“&

9EndSub

10</script>

11<html>

12<body>

13<h4allgn=,rcenterrr>Reques對(duì)象示例</h4>?3http://localhost//chapter4/4-XaspM?u$er_n<i-1□!x|

14<foriariniac=server>

15<asp:labelid=,rMessagerrrunat=server/>

16</form>

17</body>

18

id

網(wǎng)頁(yè)的工作原理

發(fā)出請(qǐng)求(Request)

客戶產(chǎn)NLI

服務(wù)器端

發(fā)回網(wǎng)MfResponse)

4.3.3ServerVariables數(shù)據(jù)集合::

?禾Ll用Request對(duì)象的ServerVariables數(shù)據(jù)集合可以

方便地取得服務(wù)器端或客戶端的環(huán)境變量信息,比

如客戶端的IP地址、用戶使用的瀏覽器類型和版本、

服務(wù)器的主機(jī)名等等。

?語法:

>RequestServerVariables("環(huán)境變量名稱”)

???

???

環(huán)境變量名稱說明

ALL_HTTP客戶端瀏覽器所發(fā)出的所有http標(biāo)題文件

AUTH_TYPE當(dāng)訪問被保護(hù)的腳本時(shí),用以判斷該用戶是否合法

CONTENT_LENGTH發(fā)送到客戶端的文件長(zhǎng)度

CONTENT_TYPE發(fā)送到客戶端的文件類型

LOCAL_ADDR服務(wù)器端的ip地址

LOGON_USER若用戶以windowsNT登錄時(shí),所記錄的客戶端信息

QUERY_STRINGhttp請(qǐng)求中?后的內(nèi)容

REMOTE_ADDR客戶端ip地址

續(xù)表

環(huán)境變量名稱說明

REMOTE_HOST客戶端主機(jī)名

REQUEST_METHOD數(shù)據(jù)請(qǐng)求的方法對(duì)http的請(qǐng)求方式,可以是GET、

POST等方法

SCRIPT_NAME當(dāng)前asp文件的虛擬路徑

SERVER_NAME獲取服務(wù)器的主機(jī)名

SERVER_PORT用http作數(shù)據(jù)請(qǐng)求時(shí),服務(wù)器接受請(qǐng)求的端口號(hào)

URLURL的相對(duì)網(wǎng)址

ServerVariables示例???

?1Rescriptlanguage="YB"rianat=rrserverrr>

2Subpage」。ad(SenderAsObject,EAsEventArgs)

3Message.Texc="您的IP地址是:"&

Request.ServerVariables(rrPEMOTE_AI'DRrr)

4EndSub

E</script>

6<html>

7<body>

<h4811.皿="。出冼1:“:>加5?川21:?獨(dú)1。數(shù)據(jù)集合示例<:/}14>

9<formrunat=server>

10<asp:labelid=rrMessager,runav=,,serve]:,7>

il</forin>

12</body>

13</htnl>

lid

4.3.4ClientCerlificate數(shù)據(jù)集合:

?如果客戶端瀏覽器支持SSL3Q或PCT1協(xié)議,可以

利用Clientcertificate數(shù)據(jù)集合取回客戶端瀏覽器

的身份驗(yàn)證信息。語法如下:

>Request.Clientcertificate(關(guān)鍵字)

?如果客戶端瀏覽器未送出身份驗(yàn)證信息,或服務(wù)器

端也未設(shè)置向客戶端瀏覽器要求身份驗(yàn)證的命令,

那么將返回空值。如果有,將返回相應(yīng)的身份驗(yàn)證

信息。

4.3.5Browser數(shù)據(jù)集合:

?Request對(duì)象的Browser數(shù)據(jù)集合就可以方便地獲

取客戶端瀏覽器特性,如類型、版本、是否支持背

景音樂等。

?語法:

>Request.Browser("瀏覽器特性名稱”)

???

???

名稱說明

Browser瀏覽器版本類型

Version瀏覽器版本名稱

Majorversion瀏覽器主版本

Minorversion瀏覽器次版本

Frames是否支持框架功能,True表不支持,

false表不不支持

Tables是否支持表格功能

Cookies是否支持cookies

Backgroundsounds是否支持背景音樂

續(xù)表

名稱說明

VBScript是否支持VBScript

JavaScript是否支持JavaScript

JavaApplets是否支持Java小程序

ActiveXControls是否支持ActiveXControls控件

Browser示例

1<scriptJLanguage="VB"runat=rrserverrr>

2Subpage_load(SenderAsObject,EAsEventArgs)

3DimstrMessageAsString4-5.aspx

4strHessage="瀏覽器尖型:"&Request.Browser(nBroTjrserr,)

rstrMessage&="<br>瀏覽器版本:”&

Request.Browser(,rVci.sionr,)

6strMessage&="《“'支持CUSCLES否:"&

Request.Browser(rTCookiesrr)

7strMessage&="<br)支持背景音樂否:rT&

Request.Browser(rrBackaroundSo\uids,T)

8message.Texr=strMessage

9EndSub

10</script>

il<htnil>

12<body>

13<h4align="匚enter”〉客戶端瀏覽器特性</h4>

14<formrunat=server>

15<asp:labelid=rrBiessagerrrunat=rrserverrr/>

16

17</body>

?18</html>

IkJ

4.3.6Tota舊ytes屬性

?利用該屬性可以得到客戶端提交數(shù)據(jù)的字節(jié)大小,

語法如下:

>Request.!otalBytes

4.3.7BinaryRead方法::

?前面講的5種獲取方法都是直接獲取數(shù)據(jù),而此方法

可以二進(jìn)制方式獲取客戶端用Post方法提交的數(shù)據(jù)。

?語法如下:

>Request.BinaryRead(字節(jié)大?。?/p>

?說明:其中字節(jié)大小是用Tota舊ytes屬性獲得的響應(yīng)

數(shù)據(jù)的字節(jié)大小。

4.4Response對(duì)象::

?在第3章中講過利用Label標(biāo)簽控件向客戶端輸出信

息。其實(shí),也可以利用Response對(duì)象向客戶端輸

出信息。而且,Response對(duì)象還有一些特殊功能,

如重定向等。

?注意,在ASP.NET中提倡利用控件輸出信息。

4.4.1Response對(duì)象簡(jiǎn)介

?由System.Web.HttpResponse類實(shí)現(xiàn)

?命名空間:System.Web

?屬性:

>Buffer、ContentType

?方法:

>Write>Redirect、End>Clear>Flush、

BinaryWrite

4.4.2利用Write方法輸出信息::

?利用該方法就可以在客戶端輸出信息,效果和利用

Label標(biāo)簽控件一樣。語法:

>Response.Write(變量數(shù)據(jù)或字符串)

?例如:

>Response.Write(user_name&"您好")'user_name

是一個(gè)變量,表示用戶與"

>Response.Write("現(xiàn)在是:"&now())'now()是時(shí)間

函數(shù)

>Response.Write(”業(yè)精于勤而荒于嬉vp>"),輸出字符串

Write方法示例???

i<scriptlanguagemiat-^servet^

2Subpage_load(SenderAsObject,EAsEventArgs)

3Response.Urite("您好,歡迎光?臨“),輸出百息

4Response.Write("<p>敬話提出寶貴意見")'輸出信息

5EndSub

6</script>

7<hmil>

8<body>

9<h4alignLcenter”>Mrite方法示例

10</body>

1□Ix|

11

苞完成馨本地Intranet

Write方法的其它方式

?利用該方法還可以直接在HTML代碼中動(dòng)態(tài)輸出信息,

此時(shí)需要將語句用<%和%>括起來,例如:

><h4align=''center''>Write方法示例v/h4>

><%

>Response.Write。'您好,歡迎光臨”)

>Response.Write("vp>敬請(qǐng)?zhí)岢鰧氋F意見”)

>%>

?此時(shí),它還有一種省略方式,例如:

><h4align="center''>Write方法示例v/h4>

>v%="您好,歡迎光臨"%>

>v%="vp>敬請(qǐng)?zhí)岢鰧氋F意見”%>

4.4.3使用End方法終止ASP.NET程序」Jgt4;;spx

<scriptlanguage="VB"runat="server”>

Subpage_load(SenderAsObject,EAsEventArgs)

response.write("over.")

response.end

Message.Text="您的IP地址是“&

Request.ServerVariables("REMOTE_addr")

EndSub

</script>

<html>

<body>

<h4align="center">ServerVariables數(shù)據(jù)集合示例v/h4>

<formrunat=server>

<asp:labelid="Message"runat=,,server'7>

</form>

</body>

</html>運(yùn)行結(jié)果:

over

4.4.4使用Redirect方法引導(dǎo)客戶端至另一個(gè)URL位置::

?使用Redirect方法就可以引導(dǎo)客戶至另一個(gè)頁(yè)面。語法

如下:

>Response.Redirect(網(wǎng)址變量或字符串)

?例如:

>Response.Redirect(""),引導(dǎo)

至中國(guó)教育網(wǎng)

>Response.Redirect(uother.aspx"),引導(dǎo)至

站內(nèi)其他網(wǎng)頁(yè)

>theURL=""

>Response.Redirect(theURL),引導(dǎo)至變量

表示的網(wǎng)址

???

Redirect方法示例

1(scriptlanguage="VB"runat=r,serveEr,>

Subusertype_change(SenderAsObject,EAsEventArgs)

3Ifusertype.Selectedlrem.value="teacher,rThen

4Response.Redirect(rrteacher.aspx")

,如是教師用戶,重定向到教師頁(yè)面

5Elselfusertype.Se1ecreditem.value=,rstndenr'Then

6Response.Redirect("onudenc.aspx")

,如是學(xué)生用口,重定向到學(xué)生頁(yè)面

7EndIf

8EndSub

?9</script>

10<hml>http://localhost//chapter4/4-7.aspx-Microj-In■ix|

Ud

4.4.5關(guān)于Buffer屬性:

?Buffer屬性用來設(shè)置服務(wù)器端是否將頁(yè)面先輸出到

緩沖區(qū)。它的取值為True或False,默認(rèn)為True。

?語法:

>Response.Buffer=True|False

?使用Response,redirect時(shí)必須保證Buffer值為

True。

4.4.6BinaryWrite方法::?

?該方法用于輸出二進(jìn)制信息,它不進(jìn)行任何字符轉(zhuǎn)換,

直接輸出。其語法為:

>Response.BinaryWrite(變量或字符串)

?有時(shí)侯可能在數(shù)據(jù)庫(kù)里保存了二進(jìn)制信息,就可以用

該方法輸出了。

例如:從數(shù)據(jù)庫(kù)中顯示圖片的信息就要用到該方法。

4.5HttpCookie對(duì)象::

?很多網(wǎng)站能夠記住客戶端的訪問次數(shù)。要記住訪問次

數(shù)可以采取多種方法,其中利用Cookie是一種可以

在客戶端保存信息的方法。

?ASP.NET提供了HttpCookie對(duì)象來處理Cookie,該

對(duì)象是由System.Web.HttpCookie類實(shí)現(xiàn)的。

4.5.1什么是Cookie::

?Cookie俗稱甜餅,可以在客戶端長(zhǎng)期保存信息。它

是服務(wù)器端發(fā)送到客戶端瀏覽器的文本串句柄,保存

在客戶的硬盤上。

?HttpCookie對(duì)象其實(shí)是:

>利用Response對(duì)象的Cookies方法設(shè)置Cookies;

>利用Request對(duì)象的Cookies獲取方法來獲取

Cookies的值。

4.5.2使用Response對(duì)象設(shè)置??

Cookie::

?語法如下:

>Response.Cookies(''CookiesName")[(關(guān)鍵字)|.屬

性尸字符串

?(1)設(shè)置不含關(guān)鍵字的Cookie

>Response.Cookies(''user_name'').Value=''高航''

?(2)設(shè)置含關(guān)鍵字的Cookie"

>Response.Cookies(''user'')(''name''戶''高航''

>Response.Cookies("user")("age")=22

?(3)設(shè)置Cookie的有效期

>Response.Cookies("user_name").Expires=#1/1/2

008#一

4.5.3使用Request對(duì)象讀取Cookie::?

?語法如下:

>Request.Cookies(''CookiesName'')[(關(guān)鍵字)[,屬性]

?(1)省略關(guān)鍵字的用法

>user_name=RequestCookies("user_name").Value

?(2)有關(guān)鍵字的用法

>user_name=RequestCookies("user")("name")

age=Request.Cookies("user")("age")

?(3)判斷Cookies關(guān)鍵字?jǐn)?shù)目

>result=Request.Cookies("CookiesName").Haskeys

4.5.4Cookie綜合示例

SubPage_Load(SendsrAsObject,EAsEventArgs)

3DimvNi.uoberAsInteger'定義一i、訪問次數(shù)變量

4IfRequest.Cookies(rrvNiimbeErf)IsNothingThen

S,如果是第1次訪問,就去訪問次數(shù)為1

6vNumber=l

7Else

8“口果不是第1次訪問,就令訪問次數(shù)在原有次數(shù)上加1

9vNumber=Request.Cookies(,rvNi.uii}:?er,T).value+1

10EndIf

111將新的訪問次數(shù)保存到Co0欠ies中

12Response.Cookies汴lumber").value=vNumber

13,役置百效期為1年后

14Response,Cookies("uNuiiiber"),Expires=DateTime.Now.AddYears(1)

15message,text—'名是第"&vNiimber&"次訪問本站”

16EndSub

?17</script>

3http://localhost//chapter4/4-8.aspx-Microsoft-1□1x|

<htial>

向]文件(E)編輯(日查看(y)收藏(公工具(D帝助(由,二

手融??◎國(guó)益|◎搜索囪收藏軟歷史|

地址①)|司http:"bcalhost7asp,net/chapter4/4-8.a/轉(zhuǎn)到鏈接

Cooldes示例

您是第2次訪問本站

司完成,售本地Intranet

4.6Session對(duì)象:

?利用Session對(duì)象可以方便記錄客戶的信息

4.6.1Session對(duì)象簡(jiǎn)介

?由System.Web.SessionState類實(shí)現(xiàn)

?命名空間System.Web

?屬性

>SessionlD^TimeOut

?方法

>Abandon

?事件

>Session_OnStart

>SessionOnEnd

4.6.2利用Session)

4-9.aspx

[>:y—J—-rvJJ5,M-F3J,1,5-VIII?:|工n1/八一

1〈scriptlanguage="VB"runat=,rsei:verfr>一1<scriptlanguages1^ElmaJ

2SubPage_Load(SenderAsObject,EAsEventArgs)一二SubPage_Load(SenderAsObject,EAsEventArgs)

Session("usei:_naiii2")="卓云",給SESSionj?值DimuserenameAsString,ageAsInteger

4Session("age亍=224user_name=Session(,tu5er_namef,),轉(zhuǎn)眼£esmic?n的值

5EndSubage=Session("age")'我取呢391onfit)值

匚</script>6message,text=user_name&"您好,您的年齡是"&

7<html>age.Tostring

8<body>7EndSub

8</script>

9該程序僅用來存入Session值,話自己打開4-lO.aspx查看結(jié)果

9<html>

10</body>

10<body>

?11|

!!<asp:labelid=,rmessage1'runat=,rserverrf/>

1212</body>

姆―對(duì)?13</html>l

5http://localhost//chapter-</4-9-aspx-

]文件的一編阿。查看⑦收as?Ifl(D鄧助(H)r_,

j舉局s,-???囤&I@搜索囪收蔻圖|歷史I

地址(Q)|笆>://localhost//chapter4/+9.aspx工).企箱SJ攝接》

該程序僅用來存入Session值,請(qǐng)自己打開4-10.aspx

查看結(jié)果

笆完成:熊本地Intranet及

4.6.3利用Session存儲(chǔ)數(shù)組信息

4-11.aspx|?/_Ml.J_?V??J,

^scriptrr4-12.aspx卜

language=\Si<scriptlanguage=

SubPage_Load(SenderAsObject,EAsEventArgs)

SubPage__Load(SenderAsObject,EAsEventArgs)—

Dimuserename(2)AsString

3Dimuserename()AsString?定義一個(gè)變長(zhǎng)數(shù)妲

4user_name(O)="白蕓"

user__name=Session(,ru3er_namer,)岑股SemsiorMi直

§userename(1)="海岸"

message,text=userename(0)&“您好二p、'r&

6Session("u£€:L_naiuE")=user_nanieuser_name(l)&”!旃"

,傳入數(shù)組到Session^}象

6EndSub-

EndSub

7</script>

8</script>

e

9<html>

9<body>

10<body>

ia<asp:labelid="w2ssag已“tunat=,rserverrr/>

11該程序僅用來存入Sessi。磷(蛆,話自己打開4-12.aspx查看結(jié)果.

</body>

id1T

-Inixi

http://localhost//chapter-</4-li^spx?卜

_____二「士1

]文件(E)編輯(E)£S(v)收蘸⑥XM(D幫助?

j①后遢-”?◎國(guó)縊|尊竦在研凌歷史|

I司,/lo3lhosUa$,chapter4/4?ll.a$px▼1"轉(zhuǎn)到鏈接》

該程序僅用來存入%ssi。儆組,請(qǐng)自己打開4-

12.aspxS看結(jié)果

司完成,售本地Intranet

4.6.4Timeout屬性::

?Session對(duì)象有它的有效期,默認(rèn)為20分鐘。

客戶端每新打開一個(gè)瀏覽器窗口,就會(huì)創(chuàng)建一

個(gè)Session對(duì)象,如果超出20分鐘沒有和服務(wù)

器端交互或者關(guān)閉了瀏覽器,則該Session對(duì)象

就會(huì)自動(dòng)結(jié)束。

?修改有效期語法如下:

>Session.Timeout=整數(shù)(分鐘)

?例如:

>Session.Timeout=90,將有效期改為90分鐘

4.6.5Abandon方法:

?Session對(duì)象到期后會(huì)自動(dòng)清除,但到期前可以用

Abandon方法強(qiáng)行清除。語法:

?Session.Abandon

?例如:

?Session("user_name,,)="萌萌"

?Session.Abandon

?Response.Write(Session(',user_name"))

?說明:一

>先將前兩句復(fù)制到一個(gè)文件中執(zhí)行,然后再將第3

句復(fù)制到另一個(gè)ASP.NET文件中執(zhí)行。

4.7Application對(duì)象::

?Session對(duì)象可以記載特定客戶的信息,與此相

反的是,Application對(duì)象可以記載所有客戶信

息。

?簡(jiǎn)而言之,不同的客戶必須訪問不同的Session

對(duì)象,但可以訪問公共的Application對(duì)象。

?它的最典型的應(yīng)用是聊天室。

4.7.1Application對(duì)象簡(jiǎn)介

?由System.Web.HttpApplication類實(shí)現(xiàn)

?方法:

>Lock

>Unlock

?事件:

>Application_OnStart

>Application_OnEnd

4.7.2利用Application存儲(chǔ)信息

?語法:

>ApplicationC'Application名字“戶變量、常量、

字符串信息或表達(dá)式

?例如:

>Application.Lock

>Application(,,user_numl,)=user_num

>Application("city〉“南京”

>Application.Unlock

Application示例

?這是一個(gè)簡(jiǎn)單的聊天室,共分3個(gè)文件

>4?13.aspx框架頁(yè)文件(省略不講)

4-14.aspx口

3Application對(duì)象示例-MicrosoftInternetExplorer,1□1x|

4-15.aspx讀取發(fā)言信

苞競(jìng)成一I'一[一:犀不他Intranet

4?14.aspx保存發(fā)言信息

4-14.aspx

i<scriptlanguage=rrVBr,runat="serverrr>

2SubEnter_Click(SenderAsObject,EAsEventArgs)

3Application.Lock

4Application(r'showrr)=pronunciation.Text&,r<L>r>r,&

Applieat.ion(r,showrr)

5Application.UnLock

6pronunciation.Tex,恪發(fā)言把清空

7EndSub

8</script>

a<html>

10<body>

11<formrunat=rrserver">

12?<aap:textboxid="pLonunciait4.on''coluims="3口”

runar=,,serverr,/>

13<asp:buttontext=r,發(fā)送"one11ck=r,Encer_C1ickrr

Lunac=''3erver”/>

14</form>

15</body>

</html>|

4-15.aspx讀取發(fā)言信息

4-15.aspx

473利用Application存儲(chǔ)數(shù)組信息

?和Session非常類似。

?存儲(chǔ):

>Dimuser_name(2)AsString

>user_name(O)="白蕓"

>user_name(1)="海霞"

>Application.Lock

>Application("arry_user_name")=user_name

>Application.Unlock

?讀?。?/p>

>Dimuser_name()AsString

>user_name=Application("arry_user_name")

>message.text=user_name(O)&"您好vp>"&user_name(1)&

您好“一一

4.Server對(duì)象

?Server對(duì)象是專為處理服務(wù)器上的特定任務(wù)而設(shè)

計(jì)的,特別是與服務(wù)器的環(huán)境和處理活動(dòng)有關(guān)的

任務(wù)。

4.8.1Server對(duì)象簡(jiǎn)介

?由System.Web.HttpServerUtility類實(shí)現(xiàn)

?命名空間:System.Web

?類:

?屬性:

>ScriptTimeout

?方法:

>Execute>Transfer

>HtmlEncode>UrlEncode

>CreatObject>MapPath

4.8.2ScriptTimeout屬性

?該屬性用來規(guī)定腳本文件執(zhí)行的最長(zhǎng)時(shí)間,默

認(rèn)為90秒。主要是用來防止某些可能進(jìn)入死循

環(huán)的錯(cuò)誤導(dǎo)致服務(wù)器過載問題。

?修改方法如下:

>Server.ScriptTimeout=300

4.8.3CreateObject方法

?該方法可以用于創(chuàng)建組件、應(yīng)用對(duì)象或腳本對(duì)

象的實(shí)例。

?語法如下:

>Server.CreateObject(ActiveXServer組件)

4.8.4HTMLEncode方法

i<script.language="VB"rijnat=r,serveLrr>

.一,SubPage_Load(SenderAsObject,EAsEventArgs)

3messagel.text=r,<a

href='httsp://wx^roj.sohu.com,搜狐"a?"

4message2.text=Server.HTMLEncode(,r<a

href='httsp://ww.sohu.com'、搜狐)

5EndSuto

6</script>

7<html>

8<body>

g<asp:labelid="me3sagel''runau='*servei:**/>

10<p><asp:labelid=,rDiessage2r,runat=,rserverr,/>

il</body>

l±i</htm.l>

485URLEncode方法

?該方法用來轉(zhuǎn)化字符串為URL編碼。

?例子:

>Server.URLEncode(uab")

?結(jié)果:

>a+b

????

4.8.6MapPath方法???

?可以將虛擬路徑轉(zhuǎn)化為物理路徑。

<scriptlanguage=,rVB,rrunat=r,serverfr>

2SubPage_Load(SenderAsObject,EAsEventArgs)4-17.aspx

3messagel.text=Server.MapPath(rr4-16.asp")

4messageZ.text=Server.MapPath(rr../chapter3/3-l.asp")

5EndSub

6</script>

7<html>

8<body>

<asp:lakielid=,rmes3agelrrnunat:="3erv已?。骸?>

10<p><asp:labelid=rrmes3age2r*runat=rr3erverrr

il</body>

?*j</htnil>

4.8.7Execute方法

?該方法用來停止執(zhí)行當(dāng)前網(wǎng)頁(yè),轉(zhuǎn)到新的網(wǎng)頁(yè)

執(zhí)行,執(zhí)行完畢后返回原網(wǎng)頁(yè),繼續(xù)執(zhí)行

Execute方法后面的語句。

?語法如下:

>Server.Execute(變量或字符串)

4.8.7Execute方法

?該方法和Redirect方法的區(qū)別。

>(1)Redirect語句盡管是在服務(wù)器端運(yùn)行,但重定

向?qū)嶋H發(fā)生在客戶端,而Execute方法的重定向?qū)嶋H

發(fā)生在服務(wù)器端。

>(2)Redirect語句執(zhí)行完新的網(wǎng)頁(yè)后,并不返回原

網(wǎng)頁(yè),而Execute方法卻返回原頁(yè)面,繼續(xù)執(zhí)行下面

的語句。

>(3)Redirect語句并不能把一些環(huán)境變量傳遞過去,

而Execute方法卻可以。

>(4)Redirect方法可以轉(zhuǎn)向一個(gè)網(wǎng)頁(yè)和其他網(wǎng)站,

而Execute方法一般只能轉(zhuǎn)到同一個(gè)應(yīng)用程序的其他

文件。

4.8.8Transfer方法

?該方法和Execute方法非常相似,惟一的區(qū)別是

執(zhí)行完新的網(wǎng)頁(yè)后,并不返回原網(wǎng)頁(yè),而是停

止執(zhí)行過程。

?語法如下:

>Server.!ransfer(變量或字符串)

Execute方法示例

4-18.aspx

?1<html>

<body>

<p》敬請(qǐng)?zhí)岢鰧氋F意見

4</body>

5

6

|口局s▼?◎國(guó)有◎搜索收藏

地址(Q

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論