資源描述:
《ASPdocNET內(nèi)置對象》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第4章ASP.NET內(nèi)置對象內(nèi)容ASP.NET應(yīng)用程序生命周期ASP.NET網(wǎng)頁Page類的內(nèi)置對象Web應(yīng)用的配置與配置管理工具Web應(yīng)用的異常處理3.2Page類Page對象指的是頁面對象,是由System.Web.UI.Page類實現(xiàn)。頁面的基類是Page類,它提供了許多屬性,可以訪問ASP.NET頁面信息。3.2.1Page類的屬性內(nèi)置對象:Response、Request、Application、Session、cookie、ServerEnableViewState:頁面及服務(wù)器控件的視圖狀態(tài)。IsCrossP
2、agePostBack:是否是跨頁發(fā)送。IsPostBack:是否回發(fā)。IsValid:頁面驗證是否成功。3.2.1Page類的屬性Master:母版頁。MasterPageFile:母版頁的文件名。PreviousPage:跨頁發(fā)送時,向當(dāng)前頁傳輸控件的頁。StyleSheetTheme:應(yīng)用于此頁的樣式表的名稱。Theme:頁主題。Title:頁標(biāo)題。ViewState:包含視圖狀態(tài)的一個字典。1.內(nèi)置對象對象名說明Request提供對當(dāng)前頁請求的訪問,其中包括請求標(biāo)題、Cookie、客戶端證書、查詢字符串等,可以用它
3、來讀取瀏覽器已經(jīng)發(fā)送的內(nèi)容。Response提供對輸出流的控制,如可以向瀏覽器輸出信息、Cookie等Context提供對整個當(dāng)前上下文(包括請求對象)的訪問,可用于共享頁之間的信息Server提供用于在頁之間傳輸控件的實用方法,獲取有關(guān)最新錯誤的信息,對HTML文本進行編碼和解碼,獲取服務(wù)器信息等Application提供對所有會話的應(yīng)用程序范圍的方法和事件的訪問,還提供對可用于存儲信息的應(yīng)用程序范圍的緩存的訪問Session為當(dāng)前用戶會話提供信息。還提供對可用于存儲信息的會話范圍的緩存的訪問,以及控制如何管理會話的方法
4、。Trace提供在HTTP頁輸出中顯示系統(tǒng)和自定義跟蹤診斷消息的方法User提供對發(fā)出頁請求的用戶身份訪問,可以獲得該用戶的標(biāo)識及其它信息2.IsPostBack屬性該屬性表示該頁是否為響應(yīng)客戶端回發(fā)而加載,或者該頁是否被首次加載和訪問。當(dāng)IsPostBack為true,表示該請求是頁面回發(fā);當(dāng)IsPostBack為false,表示該頁是被首次加載和訪問。如:protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){Response.Write("第一次
5、訪問");}else{Response.Write("非第一次訪問");}}3.EnableViewState屬性該屬性表示當(dāng)前頁請求結(jié)束時,該頁是否保持其視圖狀態(tài)以及它包含的任何服務(wù)器控件的視圖狀態(tài)。4.IsValid屬性該屬性表示頁面驗證是否成功。在實際應(yīng)用中,往往會驗證頁面提交的數(shù)據(jù)是否符合預(yù)期設(shè)定的格式要求等,如果所有都符合則IsValid值為true,反之為false。3.2.2Page類的方法1.設(shè)置焦點Page類的Focus或SetFocus方法,可將焦點設(shè)置給指定的控件。2.查找指定的服務(wù)器控件Page類的
6、FindControl方法,在頁命名容器中搜索指定的服務(wù)器控件。TextBoxt=(TextBox)Page.FindControl("test");t.Focus();ASP.NET的Web窗體頁是在服務(wù)器上運行的,要使頁面中的按鈕或其他內(nèi)容得到處理,必須將這些信息提交到服務(wù)器。每次頁面提交時,都會再次運行其服務(wù)器端代碼,然后向用戶呈現(xiàn)新的頁面,基本處理過程如下:用戶通過客戶端瀏覽器請求頁面,頁面第一次運行。程序員可以通過在Page_load事件中編寫代碼對頁面進行初步處理,例如初始化頁面等。服務(wù)器將代碼轉(zhuǎn)換為能被客戶端
7、識別的HTML標(biāo)記發(fā)送到客戶端,客戶端瀏覽器對HTML進行解析并將其顯示出來。9Web窗體頁的往返機制用戶通過界面進行各種操作。例如單擊某個按鈕等。此時瀏覽器將頁面再次發(fā)送到Web服務(wù)器,在ASP.NET中稱該過程為“PostBack”,也叫“回發(fā)”。例如用戶正在訪問的頁面是Default.aspx,當(dāng)用戶單擊該頁面上的某個按鈕后,瀏覽器發(fā)送到服務(wù)器的目標(biāo)還是Default.aspx?!癙ostBack”相當(dāng)于在Web服務(wù)器上再次加載該頁面,并能在頁面上獲取用戶操作的信息。如果用戶單擊的是超鏈接而不是按鈕,服務(wù)器可能僅僅將
8、其定位到另一個頁面,而不會對包含超鏈接的頁面做進一步處理。10服務(wù)器執(zhí)行代碼隱藏類中的代碼(簡稱為后臺代碼),處理指定的操作,然后將執(zhí)行操作后的頁面返回給客戶端瀏覽器。從基本處理過程可以看出,由于頁面處理發(fā)生在Web服務(wù)器上,因此頁面可以執(zhí)行的每個操作都需要一次“客戶端?服務(wù)器?客戶端”的往返行程。11