page和其它几个内置对象(转)
1.PAGE對象的屬性
?? IsValid屬性:用來判斷網(wǎng)頁上的驗證控件是否全部驗證成功.
?? Request屬性:獲取請求網(wǎng)頁的Request對象.
?? Response屬性:獲取與請求網(wǎng)頁相關(guān)的Response對象.
?? Server屬性:獲取Server對象.
?? Session屬性:獲取Session對象.
?? Trace屬性:獲取當(dāng)前網(wǎng)頁請的Tracec對象.Trace對象派生自TraceContext類,可以用來
?
處理應(yīng)用程序跟蹤.
?? Validators屬性:獲取請求的網(wǎng)頁所包含的ValidatorCollection集合,其中包含網(wǎng)頁上
?
所有的驗證控件.
?? Visible屬性:獲取或設(shè)置網(wǎng)頁是否可現(xiàn).
?? Application屬性:獲取Web請求的Application對象.Application對象派生自
?
HttpApplicationState類,每個Web應(yīng)????? 用 程序都有一個自己的Application對象,用來
?
記錄訪問Web應(yīng)用程序所有用戶共享的變量.
?? Cache屬性:獲取與Web所在的應(yīng)用程序關(guān)聯(lián)的Cache對象.Cache對象派生自Cache類,允許
?
在后續(xù)請求中保存并捕獲數(shù)據(jù),以此來提高應(yīng)用程序的效率.
?? ClientTarget屬性:獲取或設(shè)置客戶端瀏覽器.
?? EnableViewState屬性:獲取或設(shè)置當(dāng)前網(wǎng)頁請求結(jié)束時是否保持視圖狀態(tài)
?? ErrorPage屬性:獲取或設(shè)置當(dāng)網(wǎng)頁發(fā)生未處理的異常情況時將用戶請求定向到哪能個錯
?
誤信息網(wǎng)頁.
?? IspostBack屬性:判斷網(wǎng)頁是在何種情況下加載.
?
2.PAGE對象的常用方法:
?? MapPath(virtualPath):將virtualPath指定的虛擬路徑轉(zhuǎn)換成實際路徑
?? ParseControl(content):將content指定的字符串解釋成控件
?? RegisterClientScriptBlock(key,script):發(fā)送客戶端肢本給瀏覽器,其中參數(shù)key是
?
腳本塊的鍵值,script是要發(fā)送到客戶端的腳本
?? RegisterHiddenField(hiddenFieldName,hiddenFieldInitialValue):在Web Form 上添
?
加名稱為hiddenFieldName 值為hiddenFieldInitialValue的隱藏字段.
?? ReigsterOnSubmitStatement(key,script):設(shè)置當(dāng)客戶端發(fā)生OnSubmit事件時所要執(zhí)行
?
的代碼,參數(shù)key為腳本塊的鍵值,參數(shù)script為要發(fā)送到客戶端的腳本.
?? ResolveUrl(relativeurl):將相對地址relativeUrl轉(zhuǎn)換為絕對地址
?? Validatae():執(zhí)行網(wǎng)頁上的所有驗證控件
?? DataBind():將數(shù)據(jù)源連接到網(wǎng)頁上的服務(wù)器控件
?? Dispose():強制服務(wù)器控件在內(nèi)存釋放之前執(zhí)行最終的清理操作.
?? FindControl(id):在網(wǎng)頁上搜索標(biāo)識名稱為id的控件
?? HasControls():判斷Page對歇腳是否包含控件
?? IsClientScriptBlockRegistered(key):判斷客戶端腳本是否已經(jīng)使用鍵值key注冊過
3.Page對象的事件:
?? Init:網(wǎng)頁初始化會觸發(fā)此事件,是網(wǎng)頁執(zhí)行第一個被觸發(fā)的事件.
?? Load:當(dāng)網(wǎng)頁被加載時會觸發(fā)此事件
?? PreRender:在信息被寫入到客戶端前會觸發(fā)此事件
?? Unload:網(wǎng)頁完成處理并且信息被除數(shù)寫入到客戶端后會觸發(fā)此事件
?? AbortTransaction:當(dāng)用戶終止網(wǎng)頁參與的交互時會觸礁發(fā)此事件
?? CommitTransaction:當(dāng)完成網(wǎng)頁參與的交互時會觸礁發(fā)此事件
?? DataBinding:當(dāng)網(wǎng)頁上的服務(wù)器控件連接數(shù)據(jù)源時會觸發(fā)此事件
?? Disposed:當(dāng)網(wǎng)頁從內(nèi)存釋放晨會觸發(fā)此事件
?? Error:當(dāng)網(wǎng)頁發(fā)生未處理的異常情況時會觸發(fā)此事件,可以使用此事件自定義錯誤處理
?
?
其它內(nèi)置對象
?
1. Response 對象
Response對象是HttpResponse類的一個實例, 它用于控制服務(wù)器發(fā)送給瀏覽器的信息, 包括直接發(fā)送信息給瀏覽器, 重定向瀏覽器到另一個URL或設(shè)置cookie的值.
①. 發(fā)送信息
Response.Write(value);
②. 重定向瀏覽器
Response.Redirect(Url);
2. Request 對象
Request對象是HttpRequest類的一個實例, 其主要功能是從客戶端獲取數(shù)據(jù).
①. 獲取URL傳遞變量
Request對象的QueryString屬性可以用來獲取URL地址中"?"后面的數(shù)據(jù), 即URL附加信息.
QueryString主要用于獲取HTTP協(xié)議中GET請求發(fā)送的數(shù)據(jù). Get方式是HTTP請求中默認(rèn)的請求方式.
<html?xmlns="http://www.w3.org/1999/xhtml"?>
<head?runat="server">
????<title>使用Request對象</title>
</head>
<body>
<center>
????<form?id="form1"?runat="server"?action="incept.aspx"?method="get">
????????請輸入你的姓名<input?type="text"?name="name"?/><p></p>
????????<input?type="submit"?value="發(fā)送"?/>
????</form>
</center>
</body>
</html>
<html?xmlns="http://www.w3.org/1999/xhtml"?>
<head?runat="server">
????<title>使用Request對象</title>
</head>
<body>
<center>
????<form?id="form1"?runat="server">
????<h4>接受Get方法傳遞來的數(shù)據(jù)<br?/></h4>
????<%
????????string?name?=?Request.QueryString["name"];
????????Response.Write("你的姓名為"?+?name);
?????????%>
????</form>
</center>
</body>
</html>
②. 獲取表單傳遞值
當(dāng)需要在網(wǎng)頁間傳遞信息時, 還可以通過表單來實現(xiàn), 表單傳遞的信息可以由Request對象的Form屬性來獲取.
<html?xmlns="http://www.w3.org/1999/xhtml"?>
<head?runat="server">
????<title>使用Request對象</title>
</head>
<body>
????<form?id="form1"?runat="server"?action="formadd.aspx"?method="post">
????請輸入你的姓名:<input?type="text"?name="name"?/><br?/>
????請輸入你的性別:<input?type="text"?name="sex"?/><br?/>
????請輸入你的職業(yè):<input?type="text"?name="occupation"?/><br?/>
????<input?type="submit"?value="發(fā)送"?id="submit1"?name="submit1"?/>
????????
????</form>
</body>
</html>
<html?xmlns="http://www.w3.org/1999/xhtml"?>
<head?runat="server">
????<title>使用Request對象2</title>
</head>
<body>
<center>
????<form?id="form2"?runat="server">
????<h4>接受POST方法所傳的數(shù)據(jù)<br?/></h4>
????<%
????????string?name?=?Request.Form["name"];
????????Response.Write("你的姓名為:"?+?name?+?"<br>");
????????string?sex?=?Request.Form["sex"];
????????Response.Write("你的性別為:"?+?sex?+?"<br>");
????????string?occupation?=?Request.Form["occupation"];
????????Response.Write("你的職業(yè)為:"?+?occupation?+?"<br>");
?????????%>
????</form>
</center>
</body>
</html>
3. Server對象
Server對象提供了對服務(wù)器上方法和屬性的訪問.
Server對象的大多數(shù)方法和屬性是作為實用程序的功能服務(wù)的, 例如, 使用它們可以實現(xiàn)轉(zhuǎn)變字符串格式, 創(chuàng)建捆綁對象以及控制頁面顯示時間等.
①. 向瀏覽器輸出HTML代碼
使用Server對象的HTMLEncode方法可以向瀏覽器輸出HTML代碼.
<html?xmlns="http://www.w3.org/1999/xhtml"?>
<head?runat="server">
????<title>使用Server對象</title>
</head>
<body>
????<form?id="form1"?runat="server">
????<%
????????Response.Write(Server.HtmlEncode("<center><h4>成功屬于,永不放棄的人!<br></h4></center>"));
????????Response.Write("<center><h4>成功屬于,永不放棄的人!<br></h4></center>");
?????????%>
????</form>
</body>
</html>
4. Application對象
Application對象是運行在Web應(yīng)用服務(wù)器上的虛擬目錄及其子目錄下所有文件,頁面,模塊和可執(zhí)行代碼的總和.
①. 使用Application對象的自定義屬性
可以根據(jù)特定的需要為Application對象定義屬性, 以存儲一些公有的數(shù)據(jù), 語法:
Application["屬性名"]
示例:
<html?xmlns="http://www.w3.org/1999/xhtml"?>
<head?runat="server">
????<title>使用Application對象</title>
</head>
<body>
<center>
????<form?id="form1"?runat="server">
????????<%
????????????Application["regardMorning"]?=?"上午好!";
????????????Application["regardAfernoon"]?=?"下午好!";
????????????Application["regardNight"]?=?"晚上好!";
?????????%>
?????????<%=Application["regardMorning"]?%><br?/><p></p>
?????????<%=Application["regardAfernoon"]%><br?/><p></p>
?????????<%?=Application["regardNight"]?%>
????</form>
</center>
</body>
</html>
②. 網(wǎng)頁計數(shù)器
網(wǎng)頁計數(shù)器是Application對象的功能之一, 由于Application對象是所有用戶共享的, 因而可以用來存儲計數(shù)器的值, 當(dāng)有新用戶訪問網(wǎng)頁時, 可以自動增加計數(shù)器的值.
<html?xmlns="http://www.w3.org/1999/xhtml"?>
<head?runat="server">
????<title>使用Application對象</title>
</head>
<body>
????<form?id="form1"?runat="server">
????????<%
????????????Application.Lock();
????????????Application["count"]?=?Convert.ToInt32(Application["count"])?+?1;
????????????Application.UnLock();
?????????????%>
????????<p?align="center">您是本網(wǎng)站第<%=Application["count"]?%>位貴賓!</p>
????</form>
</body>
</html>
5. Session對象
從一個客戶到達(dá)某個網(wǎng)站開始, 到其離開該網(wǎng)頁為止的這段時間內(nèi), 服務(wù)器會為該用戶分配一個Session, 以保存該用戶會話時所需要的信息.
①. 利用Session的自定義屬性保存信息
Session對象的主要用途是保存信息. 當(dāng)一個客戶第一次登錄網(wǎng)站時,系統(tǒng)會為其分配一個Session, 只有當(dāng)該客戶退出時,或Session的生命周期結(jié)束時, 信息才會被清除.
②. Session的唯一性和Session的終止
當(dāng)客戶登錄網(wǎng)站后, 服務(wù)器會為其分配一個Session, 不同客戶的Session是各不相同的, 用以標(biāo)識不同的客戶, SessionID屬性是用以區(qū)別Session的唯一標(biāo)志, 每個Session都具有唯一的SessionID.
③. 利用Session實現(xiàn)購物車
利用Session還可以創(chuàng)建虛擬購物車, 當(dāng)客戶在網(wǎng)絡(luò)商店中選擇商品時, 該商品就會進(jìn)入購物車?yán)锩?/span>, 客戶的購物信息就保存在Session中.
Session的一個重要應(yīng)用就是實現(xiàn)電子商務(wù)網(wǎng)站的購物車.
模擬購物車實例:
購買商品
<html?xmlns="http://www.w3.org/1999/xhtml"?>
<head?runat="server">
????<title>使用Session對象</title>
</head>
<body>
<%
????if?(Request["b1"]?==?"提交")
????{
????????Session["s1"]?=?Request["c1"];
????????Session["s2"]?=?Request["c2"];
????????Session["s3"]?=?Request["c3"];
????}
?????%>
?????各種彩電大減價,歡迎選購!
????<form?id="form1"?runat="server"?method="post"?action="Product.aspx">
????<p><input?type="checkbox"?name="c1"?value="海爾彩電"/>海爾彩電</p>
????<p><input?type="checkbox"?name="c2"?value="長虹彩電"/>長虹彩電</p>
????<p><input?type="checkbox"?name="c3"?value="康佳彩電"/>康佳彩電</p>
????<p><input?type="submit"?name="b1"?value="提交"?/>
????<input?type="reset"?name="b2"?value="全部重寫"?/>
????<a?href="otherProduct.aspx">買其他商品</a>
????<a?href="myCart.aspx">查看購物車</a>
????</p>
????</form>
</body>
</html>
購買其他商品:
<html?xmlns="http://www.w3.org/1999/xhtml"?>
<head?runat="server">
????<title>使用Session對象</title>
</head>
<body>
<%
????if?(Request["x1"]?==?"提交")
????{
????????Session["s4"]?=?Request["b1"];
????????Session["s5"]?=?Request["b2"];
????????Session["s6"]?=?Request["b3"];
????}
?????%>
?????各種鞋子大減價,歡迎選購!
????<form?id="form1"?runat="server"?method="post"?action="otherProduct.aspx">
????<p><input?type="checkbox"?name="b1"?value="旅游鞋"?/>旅游鞋</p>
????<p><input?type="checkbox"?name="b2"?value="跑鞋"?/>跑鞋</p>
????<p><input?type="checkbox"?name="b3"?value="冰鞋"?/>冰鞋</p>
????<p><input?type="submit"?name="x1"?value="提交"?/>
????<input?type="reset"?name="b2"?value="全部重寫"?/>
????<a?href="Product.aspx">買其他商品</a>
????<a?href="myCart.aspx">查看購物車</a>
????</p>
????</form>
</body>
</html>
查看購物車:
<html?xmlns="http://www.w3.org/1999/xhtml"?>
<head?runat="server">
????<title>使用Session對象</title>
</head>
<body>
購物情況顯示:
????<div?align="center">
????<%
????????Response.Write(Session["s1"]?+?"<br>");
????????Response.Write(Session["s2"]?+?"<br>");
????????Response.Write(Session["s3"]?+?"<br>");
????????Response.Write(Session["s4"]?+?"<br>");
????????Response.Write(Session["s5"]?+?"<br>");
????????Response.Write(Session["s6"]?+?"<br>");
?????????%>
????</div>
</body>
</html>
6. Cookie對象
在HTTP協(xié)議下, Cookie只不過是一個文本文件, 是服務(wù)器或者腳本用以維護(hù)用戶信息的一種方式, Cookie可以用來記錄用戶的相關(guān)信息.
向瀏覽器輸出Cookie, 也就是將Cookie寫入到瀏覽器中, 讓瀏覽器保存Cookie的值.
using?System;
using?System.Data;
using?System.Configuration;
using?System.Collections;
using?System.Web;
using?System.Web.Security;
using?System.Web.UI;
using?System.Web.UI.WebControls;
using?System.Web.UI.WebControls.WebParts;
using?System.Web.UI.HtmlControls;
public?partial?class?Cookie?:?System.Web.UI.Page
{
????protected?void?Page_Load(object?sender,?EventArgs?e)
????{
????????HttpCookie?myCookie?=?new?HttpCookie("user");
????????myCookie.Value="You?are?really?wonderful!";
????????Response.Cookies.Add(myCookie);
????????Response.Write("<center>"?+?"寫入Cookie"?+?"</center>");
????????string?aCookie?=?Request.Cookies["user"].Value;
????????Response.Write("<center>"?+?aCookie?+?"</center>");
????????Response.Write("<br>");
????}
}
?
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/softpower/archive/2010/12/01/1892744.html
總結(jié)
以上是生活随笔為你收集整理的page和其它几个内置对象(转)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Castle.ActiveRecord的
- 下一篇: FAT AP和FIT AP 区别 (无