資源描述:
《學(xué)習(xí)單元:模塊會員登錄模塊》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、ASP.NET程序設(shè)計(jì)學(xué)習(xí)單元2:模塊1—會員登錄模塊隨著Web應(yīng)用的不斷發(fā)展,在.NET戰(zhàn)略中,提出了全新的Web應(yīng)用開發(fā)技術(shù)ASP.NET,引入了Web窗體的概念。窗體界面元素被稱為Web控件,像Windows窗體編程一樣,將Web控件拖到窗體中進(jìn)行可視化設(shè)計(jì),大大提供Web開發(fā)的效率。2.1Web窗體與Page類Web窗體提供了一種直觀方便的編程模型,它不僅可用于快速創(chuàng)建復(fù)雜的Web應(yīng)用程序界面,而且可以實(shí)現(xiàn)功能復(fù)雜的業(yè)務(wù)邏輯和數(shù)據(jù)庫訪問。Web窗體包含兩種不同代碼塊的組合:含有頁面布局和ASP.NET控件模板信息的HTML代碼。它負(fù)責(zé)在瀏覽器上顯示W(wǎng)eb窗體,其擴(kuò)展名為“.as
2、px”。對Web窗體進(jìn)行邏輯處理的ASP.NET代碼。它負(fù)責(zé)生成在Web窗體上顯示的動態(tài)內(nèi)容,其擴(kuò)展名為“.aspx.cs”。2.1.1Web窗體Web窗體的主要特點(diǎn)基于MicrosoftASP.NET技術(shù),在服務(wù)器上運(yùn)行的代碼動態(tài)生成界面,并將之發(fā)送到瀏覽器或客戶端設(shè)備輸出。兼容所有瀏覽器或移動設(shè)備。Web窗體頁幾乎可以輸出任何支持客戶端瀏覽的語言,包括HTML、XML和Script等。兼容.NET公共語言運(yùn)行時(shí)(CLR)所支持的任何語言,包括C#、VB.NET等。基于Microsoft.NETFramework生成,具有的.NETFramework所有優(yōu)點(diǎn),包括托管環(huán)境、類型安全性
3、和繼承。具有靈活性,可以添加用戶創(chuàng)建的控件和第三方控件。2.1.1Web窗體ASP.NET界面語法ASP.NET界面文件的擴(kuò)展名為.aspx,該類文件的語法結(jié)構(gòu)主要由以下組成:指令Head窗體元素Web服務(wù)器控件或HTML控件客戶端腳本服務(wù)器端腳本2.1.1Web窗體1.指令@Page:頁面指令,此指令最為常用,允許指定多個(gè)配置選項(xiàng),常在Web窗體界面文件中的第一行使用,它定義了ASP.NET頁分析器和編譯器使用的頁面特定屬性,只能包含在.aspx文件中。Language:指定編程使用的語言AutoEventWireup:是否自動裝載Page_Init和Page_Load方法CodeF
4、ile:指定關(guān)聯(lián)的后臺代碼文件Inherits:指定供頁繼承的代碼隱藏類@Control:指定ASP.NET用戶控件。@Register:注冊其他控件以便在頁面上使用。聲明控件的標(biāo)記前綴和控件程序集的位置。如果要向頁面添加用戶控件或自定義ASP.NET控件,則必須使用此指令。@Master:使用于特定的母版頁。@OutputCache:指定緩存的頁面,并指定何時(shí)緩存該頁、緩存需多長時(shí)間。1.指令1.指令DOCTYPE:是documenttype(文檔類型)的簡寫,用來說明你用的XHTML或者HTML是什么版本。其中的DTD叫文檔類型定義,里面包含了文檔的規(guī)則,瀏覽器就根據(jù)你定義的DTD
5、來解釋你頁面的標(biāo)識,并展現(xiàn)出來。要建立符合標(biāo)準(zhǔn)的網(wǎng)頁,DOCTYPE聲明是必不可少的關(guān)鍵組成部分;除非你的XHTML確定了一個(gè)正確的DOCTYPE,否則你的標(biāo)識和CSS都不會生效。在Head的內(nèi)容不會被顯示(除標(biāo)題外),但它對于瀏覽器可能是非常有用的信息,如使用HTML版本、腳本和樣式表等內(nèi)容。2.Head如果頁面包含允許用戶與頁面交互并提交該頁面的控件,則必須包含一個(gè)form元素。遵循的規(guī)則:頁面只能包含一個(gè)form元素。必須包含runat屬性,值設(shè)置為server時(shí),允許在服務(wù)器代碼中以編程的方式引用頁面上的窗體和控件??蓤?zhí)行回發(fā)的服務(wù)器控件必須位于form元素之內(nèi)。3.Form(
6、窗體)元素通常,在ASP.NET頁中,都需要添加允許用戶與頁面交互的控件,包括按鈕、文本框、列表等。4.Web服務(wù)器控件Web窗體的生命周期一個(gè)Web窗體的生命周期類似于在服務(wù)器中運(yùn)行的Web進(jìn)程的生命周期。Web窗體從實(shí)例化分配內(nèi)存空間到處理結(jié)束釋放內(nèi)存,一般經(jīng)歷四個(gè)步驟:初始化頁面加載事件處理資源清理2.1.1Web窗體頁面生命周期中的第一個(gè)階段是初始化,其標(biāo)志是Page_Init事件。當(dāng)Init事件發(fā)生時(shí),.aspx文件中聲明的控件被實(shí)例化,并采用各自的默認(rèn)值。1.頁面初始化頁面加載在初始化之后進(jìn)行,所發(fā)生的事件為Page_Load。它根據(jù)Page.IsPostBack屬性檢查頁
7、面是不是第一次被處理;第一次處理頁面時(shí):執(zhí)行數(shù)據(jù)綁定在以后的循環(huán)過程中重新判斷數(shù)據(jù)綁定表達(dá)式讀取或更新控件屬性恢復(fù)所保存的前一個(gè)客戶請求的狀態(tài)2.頁面加載Web窗體上的每個(gè)動作都激活一個(gè)到達(dá)服務(wù)器的事件。一個(gè)Web窗體有兩個(gè)視圖:一個(gè)客戶視圖和一個(gè)服務(wù)器視圖。所有的數(shù)據(jù)處理都在服務(wù)器上進(jìn)行。當(dāng)通過單擊鼠標(biāo)或其他方法觸發(fā)一個(gè)事件時(shí),事件就到達(dá)服務(wù)器并返回相應(yīng)的數(shù)據(jù)。3.事件處理發(fā)生于一個(gè)窗體完成了它的任務(wù),并且準(zhǔn)備卸載的時(shí)候,激活Page_Unl