版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第2章ASP.NET開發(fā)基礎(chǔ)
ASP.NET是由Microsoft公司推出的新一代Web開發(fā)架構(gòu),并且作為Web開發(fā)的直接承載者,繼承了微軟一貫的風(fēng)格—簡(jiǎn)單、易用。它集成了ASP和.NET兩套技術(shù),為網(wǎng)頁開發(fā)提供了一條新的途徑。
ASP.NET的語法中定義了ASP.NET網(wǎng)頁的結(jié)構(gòu)、布局和設(shè)置,用戶還可以定義ASP.NET服務(wù)器控件、應(yīng)用程序代碼、應(yīng)用程序配置和XMLWebServices的布局。本章將詳細(xì)介紹ASP.NET的網(wǎng)頁語法,以及如何制作一個(gè)ASP.NET網(wǎng)站。2.1學(xué)習(xí)ASP.NET網(wǎng)頁語法2.1.1ASP.NET網(wǎng)頁擴(kuò)展名
ASP.NET的任何功能都可在具有適當(dāng)文件擴(kuò)展名的文本文件中創(chuàng)建??梢园袮SP.NET網(wǎng)頁擴(kuò)展名理解為ASP.NET文件的“身份證”,不同的擴(kuò)展名決定了不同文件的類型和作用。通過IIS將文件擴(kuò)展名映射到ASP.NET運(yùn)行處理。文件類型位置說明.asax應(yīng)用程序根目錄通常是Global.asax文件。該文件包含從HttpApplication類派生并表示該應(yīng)用程序的代碼.ascx應(yīng)用程序的根目錄或子目錄Web用戶控件文件,該文件是自定義的可重復(fù)使用的用戶控件.asmx應(yīng)用程序的根目錄或子目錄XMLWebServices文件。該文件包含通過SOAP方式可用于其他Web應(yīng)用程序的類和方法.aspx應(yīng)用程序的根目錄或子目錄ASP.NETWeb窗體文件。該文件可包含Web控件和其他業(yè)務(wù)邏輯.browserApp_Browsers子目錄瀏覽器定義文件。用于標(biāo)識(shí)客戶端瀏覽器的啟用功能.compileBin子目錄預(yù)編譯的stub(存根)文件。該文件指向相應(yīng)的程序集,可執(zhí)行文件類型(.aspx、.ascx、.master、主題文件)已經(jīng)預(yù)編譯并放在Bin子目錄下.config應(yīng)用程序的根目錄或子目錄通常是Web.config配置文件,該文件包含其設(shè)置配置各種ASP.NET功能的XML元素表2.1 ASP.NET網(wǎng)頁擴(kuò)展名文件類型位置說明.cs、.jsl、.vbApp_Code子目錄;但如果是ASP.NET頁的代碼隱藏文件,則與網(wǎng)頁位于同一目錄運(yùn)行時(shí)要編譯的類源代碼文件。類可以是HTTP模塊、HTTP處理程序,或者是ASP.NET頁HTTP處理程序介紹的代碼隱藏文件.dllBin子目錄已編譯的類庫文件.master應(yīng)用程序的根目錄或子目錄母版頁。定義應(yīng)用程序中引用母版頁的其他網(wǎng)頁的布局.sitemap應(yīng)用程序的根目錄站點(diǎn)地圖文件。該文件包含網(wǎng)站的結(jié)構(gòu)。ASP.NET中附帶了一個(gè)默認(rèn)的站點(diǎn)地圖提供程序,它使用站點(diǎn)地圖文件可以很方便地在網(wǎng)頁上顯示導(dǎo)航控件.skinApp_Themes子目錄用于確定顯示格式的外觀文件.slnVisualWebDeveloper項(xiàng)目目錄VisualWebDeveloper項(xiàng)目的解決方案文件.css應(yīng)用程序根目錄或子目錄,或App_Themes子目錄用于確定HTML元素格式的樣式表文件續(xù)表圖2.1擴(kuò)展名為.aspx和.cs的文件2.1.2什么是頁面指令
ASP.NET頁面中通常包含一些類似于<%@…%>這樣的代碼,被稱為頁面指令。這些指令允許為相應(yīng)頁指定頁屬性和配置信息,并由ASP.NET用作處理頁面的指令,但不作為發(fā)送到瀏覽器標(biāo)記的一部分呈現(xiàn)。當(dāng)使用頁面指令時(shí),雖然標(biāo)準(zhǔn)的做法是將指令包括在文件的開頭,但是它們也可以位于.aspx或.ascx文件的任何位置。
每個(gè)指令都可以包含一個(gè)或多個(gè)特定屬性(與值成對(duì)出現(xiàn))。2.1.3頁面指令種類與作用指令作用@Page定義ASP.NET頁分析器和編譯器使用的頁(.aspx文件)特定屬性@Import將命名空間顯示導(dǎo)入到頁中,使所導(dǎo)入的命名空間的所有類和接口可用于該頁。導(dǎo)入的命名空間可以是.NETFramework類庫或用戶自定義的命名空間的一部分@OutputCache以聲明的方式控制ASP.NET頁或頁中包含的用戶控件的輸出緩存策略@Implements指示當(dāng)前或用戶實(shí)現(xiàn)指定的.NETFramework接口@Register將別名與命名空間及類名關(guān)聯(lián)起來,以便在自定義服務(wù)器控件語法中使用簡(jiǎn)明的表示法@Assembly在編譯過程中將程序集鏈接到當(dāng)前頁,以使程序集的所有類和接口都可用在該頁上表2.2 ASP.NET頁面指令指令作用@Control定義ASP.NET頁分析器和編譯器使用的用戶控件(.ascx文件)特定屬性。該指令只能用于用戶控件@Master標(biāo)識(shí)ASP.NET母版頁@MasterType為ASP.NET頁的Master屬性分配類名,使該頁可以獲取對(duì)母版頁成員的強(qiáng)類型引用@PreviousPageType提供用于獲得上一頁的強(qiáng)類型的方法,可通過PreviousPage屬性訪問上一頁@Reference以聲明的方式指示,應(yīng)該根據(jù)在其中聲明此指令的頁對(duì)另一個(gè)用戶控件或頁源文件進(jìn)行動(dòng)態(tài)編譯和鏈接續(xù)表1.@Page指令
@Page指令允許開發(fā)人員為頁面指定多個(gè)配置選項(xiàng),并且該指令只能在Web窗體頁中使用。每個(gè).aspx文件只能包含一條@Page指令。
@Page指令可以指定:頁面中代碼的服務(wù)器編程語言;頁面是將服務(wù)器代碼直接包含在其中(即單文件頁面),還是將代碼包含在單獨(dú)的類文件中(即代碼隱藏頁面);調(diào)試和跟蹤選項(xiàng),以及頁面是否為某母版頁的內(nèi)容頁。語法:<%@Pageattribute="value"[attribute="value"...]%>(1)AutoEventWireup屬性(2)CodeFile屬性(3)Language屬性2.@Import指令
@Import指令用于將命名空間顯式導(dǎo)入到ASP.NET應(yīng)用程序文件中,并且導(dǎo)入該命名空間的所有類和接口。導(dǎo)入的命名空間可以是.NETFramework類庫的一部分,也可以是用戶定義的命名空間的一部分。語法:
<%@Importnamespace="value"%>在ASP.NET2.0中命名空間是默認(rèn)導(dǎo)入的,默認(rèn)導(dǎo)入的空間如下:(1)System
(2)System.Collections
(3)System.Collections.Specialized
(4)System.Configuration(5)System.IO(6)System.Text(7)System.Text.RegularExpressions(8)System.Web(9)System.Web.Caching(10)System.Web.Profile(11)System.Web.Security(12)System.Web.SessionState(13)System.Web.UI(14)System.Web.UI.HtmlControls(15)System.Web.UI.WebControls(16)System.Web.UI.WebControls.WebParts3.@OutputCache指令
@OutputCache指令用于以聲明的方式控制ASP.NET頁或頁中包含的用戶控件的輸出緩存策略。頁輸出緩存就是在內(nèi)存中存儲(chǔ)處理后的ASP.NET頁的內(nèi)容。這一機(jī)制允許ASP.NET向客戶端發(fā)送頁響應(yīng),而不必再次經(jīng)過頁處理生命周期。頁輸出緩存的語法:
%@OutputCacheattribute="value"[attribute="value"...]%
(1)Duration屬性(2)VaryByParam屬性4.@Implements指令
@Implements指令用來定義要在頁或用戶控件中實(shí)現(xiàn)的接口。語法:
<%@Implementsinterface="value"%>5.@Register指令
@Register指令創(chuàng)建標(biāo)記前綴和自定義控件之間的關(guān)聯(lián),這為開發(fā)人員提供了一種在ASP.NET應(yīng)用程序文件(包括網(wǎng)頁、用戶控件和母版頁)中引用自定義控件的簡(jiǎn)單方法。語法://第一種<%@Registertagprefix="tagprefix"namespace="namespace"assembly="assembly"%>//第二種<%@Registertagprefix="tagprefix"namespace="namespace"%>//第三種<%@Registertagprefix="tagprefix"tagname="tagname"src="pathname"%>6.@Assembly指令
@Assembly指令用于在編譯時(shí)將程序集鏈接到頁面,這使得開發(fā)人員可以使用程序集公開的所有類和方法等。語法://第一種<%@AssemblyName="assemblyname"%>//第二種<%@AssemblySrc="pathname"%>7.@Control指令
@Control指令與@Page指令基本相似。在.aspx文件中包含了@Page指令;在.ascx文件中不包含@Page指令,該文件中包含@Control指令。該指令只能用于用戶控件中。用戶控件在帶有.ascx擴(kuò)展名的文件中進(jìn)行定義。每個(gè).ascx文件只能包含一條@Control指令。此外,對(duì)于每個(gè)@Control指令,只允許定義一個(gè)Language屬性,因?yàn)槊總€(gè)控件只能使用一種語言。語法:<%@Controlattribute="value"[attribute="value"...]%>8.@Master指令
@Master指令只能在母版頁的.master文件中使用,用于標(biāo)識(shí)ASP.NET母版頁。每個(gè).master文件只能包含一條@Master指令。語法:
<%@Masterattribute="value"[attribute="value"...]%>9.@MasterType指令
@MasterType指令為ASP.NET頁的Master屬性分配類名,使得該頁可以獲取對(duì)母版頁成員的強(qiáng)類型引用。語法:
<%@MasterTypeattribute="value"[attribute="value"...]%>10.@PreviousPageType指令
@PreviousPageType指令為ASP.NET頁提供用于獲得上一頁的強(qiáng)類型的方法,可通過PreviousPage屬性訪問上一頁。該指令只能在Web窗體頁(.aspx文件)上使用。語法:
<%@PreviousPageTypeattribute="value"[attribute="value"...]%>11.@Reference指令
@Reference指令以聲明的方式將網(wǎng)頁、用戶控件或COM控件鏈接至目前的網(wǎng)頁或用戶控件。使用此指令可以動(dòng)態(tài)編譯與生成提供程序關(guān)聯(lián)的頁面、用戶控件或另一個(gè)類型的文件,并將其鏈接到包含@Reference指令的當(dāng)前網(wǎng)頁、用戶控件或母版頁文件。這樣就可以從當(dāng)前文件內(nèi)部引用外部編譯的對(duì)象及其公共成員。語法:
<%@ReferencePage="value"Control="value"virtualPath="value"%>2.1.4注釋ASPX文件中的代碼服務(wù)器端注釋(<%--注釋內(nèi)容--%>)允許開發(fā)人員在ASP.NET應(yīng)用程序文件的任何部分(除了<script>代碼塊內(nèi)部)嵌入代碼注釋。服務(wù)器端注釋元素的開始標(biāo)記和結(jié)束標(biāo)記之間的任何內(nèi)容,不管是ASP.NET代碼還是文本,都不會(huì)在服務(wù)器上進(jìn)行處理或呈現(xiàn)在結(jié)果頁上。2.1.5ASP.NET服務(wù)器控件語法
ASP.NET服務(wù)器控件比HTML服務(wù)器控件具有更多內(nèi)置功能。
Web服務(wù)器控件不僅包括窗體控件(例如按鈕和文本框),而且還包括特殊用途的控件(例如日歷、菜單和樹視圖控件)。
Web服務(wù)器控件與HTML服務(wù)器控件相比更為抽象,因?yàn)槠鋵?duì)象模型不一定反映HTML語法。語法:
<asp:控件名ID="名稱"…組件的其他屬性…runat="server"/>圖2.2服務(wù)器控件語法舉例2.1.6網(wǎng)頁中的代碼塊語法代碼塊語法是定義網(wǎng)頁呈現(xiàn)時(shí)所執(zhí)行的內(nèi)嵌代碼。定義內(nèi)嵌代碼的語法標(biāo)記元素為:
<%內(nèi)嵌代碼%>圖2.3代碼塊語法舉例2.1.7網(wǎng)頁中的表達(dá)式語法定義內(nèi)嵌表達(dá)式,使用的語法標(biāo)記元素為:
<%=內(nèi)嵌表達(dá)式%>圖2.4表達(dá)示語法舉例2.2制作一個(gè)簡(jiǎn)單的ASP.NET網(wǎng)站2.2.1創(chuàng)建ASP.NET網(wǎng)站圖2.5創(chuàng)建網(wǎng)站圖2.6“新建網(wǎng)站”對(duì)話框圖2.7Web窗體布局2.2.2設(shè)計(jì)Web頁面圖2.8“設(shè)計(jì)”視圖圖2.9“源”視圖2.2.3添加ASP.NET網(wǎng)站資源文件夾
ASP.NET應(yīng)用程序包含7個(gè)默認(rèn)文件夾,分別為Bin文件夾、App_Code文件夾、App_GlobalResources文件夾、App_LocalResources文件夾、App_WebReferences文件夾、App_Browsers文件夾、App_Themes文件夾。每個(gè)文件夾都存放ASP.NET應(yīng)用程序的不同類型的資源。具體說明如表2.9所示。文件夾說明Bin包含程序所需的所有已編譯程序集(.dll文件)。應(yīng)用程序中自動(dòng)引用Bin文件夾中的代碼所表示的任何類App_Code包含頁使用的類(例如.cs、.vb和.jsl文件)的源代碼App_GlobalResources包含編譯到具有全局范圍的程序集中的資源(.resx和.resources文件)App_LocalResources包含與應(yīng)用程序中的特定頁、用戶控件或母版頁關(guān)聯(lián)的資源(.resx和.resources文件)App_WebReferences包含用于定義在應(yīng)用程序中使用的Web引用的引用協(xié)定文件(.wsdl文件)、架構(gòu)(.xsd文件)和發(fā)現(xiàn)文檔文件(.disco和.discomap文件)App_Browsers包含ASP.NET用于標(biāo)識(shí)個(gè)別瀏覽器并確定其功能的瀏覽器定義(.browser)文件App_Themes包含用于定義ASP.NET
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 確保培訓(xùn)安全順利的句子課件
- 硫化氫安全知識(shí)培訓(xùn)評(píng)價(jià)課件
- 英語常見代詞用法及辨析指導(dǎo)
- 天然藥物化學(xué)基礎(chǔ)試題解析
- 高一英語教學(xué)教案 Unit3詳解
- 六年級(jí)語文新教材教學(xué)重點(diǎn)解析
- 初中家校溝通合作策略匯編
- 青年教師個(gè)人教學(xué)成長(zhǎng)總結(jié)
- 2026年湘教版初三道德與法治教育上冊(cè)期末解析含答案
- 青年手術(shù)恢復(fù)期護(hù)理
- 國家開放大學(xué)電大本科《流通概論》復(fù)習(xí)題庫
- 2025年高職物流管理(物流倉儲(chǔ)管理實(shí)務(wù))試題及答案
- 2025-2026學(xué)年統(tǒng)編版二年級(jí)語文上冊(cè)期末質(zhì)量檢測(cè)卷(含答案)
- 2025年學(xué)法減分試題及答案
- 2025年德州樂陵市市屬國有企業(yè)公開招聘工作人員(6人)參考筆試題庫及答案解析
- 2025年特種作業(yè)人員考試題庫及答案
- 邢臺(tái)課件教學(xué)課件
- 醫(yī)防融合視角下家庭醫(yī)生簽約慢病管理策略
- 2025年新能源市場(chǎng)開發(fā)年度總結(jié)與戰(zhàn)略展望
- 中職歷史期末考試及答案
- 從指南看慢性乙型病毒性肝炎的防治策略
評(píng)論
0/150
提交評(píng)論