版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
2024年1月4日第16章Web效勞創(chuàng)立和使用主講教師:楊建軍教學目標本章主要介紹了如何用ASP.NET編寫Web應用程序,如何使用Web控件以及如何通過Web窗體讀寫數(shù)據(jù)庫。Web應用程序,是一種以網(wǎng)頁形式為界面的應用程序,Web應用程序可以利用網(wǎng)絡(luò)的強大功能為用戶提供效勞。ASP.NET為這種類型應用程序的開發(fā)提供了一個強大的平臺。教學重點ASP.NET概述使用ASP.NET創(chuàng)立Web應用Web窗體校驗控件使用使用Web窗體訪問數(shù)據(jù)
15.1ASP.NET概述
ASP.NET技術(shù)可用于動態(tài)創(chuàng)立帶有效勞器端代碼的Web頁面。它是ASP〔ActiveServerPage〕的后續(xù)版本。一個ASP.NET頁面文件可以被拆分成兩個獨立的局部:一個是.aspx文件,它實際上是一個HTML文件,含HTML代碼和控件信息,定義了一個頁面的布局和外觀;另一個是.aspx.cs文件,每個.aspx文件通常都有一個對應的.aspx.cs文件,包含實現(xiàn)程序功能的代碼,如事件處理程序和輔助方法等。在ASP.NETWeb應用程序工程中“*.aspx〞和“*.cs〞文件的內(nèi)容,前者與普通的.htm文件格式非常相似,而后者那么與C#應用程序的格式相似。ASP.NET介紹ASP.NET的總體構(gòu)架圖
ASP.NET工作原理使用ASP.NET在客戶系統(tǒng)上創(chuàng)立Web應用程序,只需一個簡單的Web瀏覽器在效勞器系統(tǒng)上,需要ASP.NET運行庫15.2使用ASP.NET創(chuàng)立Web應用使用ASP.NET創(chuàng)立Web應用非常方便。因為ASP.NET中已定義了很多內(nèi)置對象,我們可以直接使用。15.2.1ASP.NET的內(nèi)建對象
盡管ASP.NET的面向?qū)ο蟮脑O(shè)計和根底代碼在本質(zhì)上不同于ASP,但ASP中許多常用的關(guān)鍵字和運算符在ASP.NET中仍保存了下來Page對象用來與擴展名為.aspx的文件相關(guān)聯(lián)。這些文件在運行時創(chuàng)立為Page對象,并緩存在效勞器內(nèi)存中。Page對象充當頁中所有效勞器控件的命名容器Response對象是HttpResponse類的實例。當用戶請求頁面時,ASP.NET將自動創(chuàng)立該對象Request對象是HttpRequest類的實例。當用戶請求頁面時,ASP.NET也將自動創(chuàng)立Request對象Application對象是HttpApplicationState類的實例。它提供對所有會話的應用程序范圍的方法和事件的訪問Session對象是HttpSessionState類的實例。它提供了對會話狀態(tài)值以及會話級別設(shè)置和生存期管理方法的訪問Web窗體頁指令Web窗體頁指令用來指定當請求ASP.NET頁和用戶控件時使用的設(shè)置
指
令說
明@Page該指令定義ASP.NET頁分析器和編譯器使用的頁的特定屬性。它只能包含在.aspx文件之中,且每個.aspx文件之中只能有一個@Page指令@Control該指令定義ASP.NET頁分析器和編譯器使用的用戶控件(.ascx文件)特定的屬性。只能包含在.ascx文件之中。且每個.ascx文件中只能有一個@Control指令@Assembly該指令在編譯過程中將程序集鏈接到當前頁,以使程序集的所有類和接口都可用在該頁上@Implements該指令指示當前頁或用戶控件實現(xiàn)指定的.NET框架接口@Import該指令將命名空間顯式導入到頁中,使導入的命名空間的所有類和接口可用于該頁。導入的命名空間可以是.NET框架類庫或用戶定義的命名空間的一部分@OutputCache該指令以聲明的方式控制ASP.NET頁或頁中包含的用戶控件的輸出緩存策略@Reference該指令以聲明的方式指示另一個用戶控件或頁源文件應該被動態(tài)編譯并鏈接到在其中聲明該指令的頁@Register該指令將別名與命名空間及類名關(guān)聯(lián)起來,以便在自定義服務器控件語法中使用簡明的表示法構(gòu)建ASP.NET應用程序
使用ASP.NET創(chuàng)立的一個Web應用程序通常有一個或多個ASP.NET頁或者Web窗體、代碼文件以及配置文件組成。一個新的Web應用程序被創(chuàng)立后,系統(tǒng)自動創(chuàng)立的文件中包含以下幾個文件:構(gòu)建ASP.NET應用程序
WebForm1.aspx文件:這是一個空白的ASP.NETWeb窗體頁面,通常可將第一個.aspx文件改名為“default.aspx〞或“index.aspx〞作為Web站點的缺省主頁。每個.aspx文件開頭的預編譯指令指明了對應的代碼文件的名稱和位置。AssemblyInfo.cs文件:這是一個普通的源代碼文件,其中包含了所有的程序集特性。文件:這是應用程序自動啟動時被加載的第一個文件,它包含了Application_Start,Session_Start,Application_End,Session_End等幾個過程。Web.config文件:這是ASP.NET應用程序的配置文件。這個文件采用的是XML格式,其中包含了與平安性、緩存管理、頁編譯等有關(guān)的信息。15.2.3Web
Server控件
Web窗體控件與HTML控件或HTML表單相比較,有一個重要的區(qū)別,Web窗體控件是效勞器端控件,是在效勞器端生成。所以,添加到窗體上的Web窗體控件也統(tǒng)稱為Server控件。Server控件與普通網(wǎng)頁上使用的標準HTML控件相似,只是它們編程更加靈活。大多數(shù)Server控件都揭示了事件處理程序、方法和屬性,效勞器上的代碼可以動態(tài)地執(zhí)行和修改它們。Server控件控件是基于更加抽象的、具有更強的面向?qū)ο筇卣鞯脑O(shè)計模型,它提供了比HTML效勞器種類更多、功能更強大的控件集合。它屬于名稱空間,所有的ASP.NET效勞器控件類都是從該名稱空間的基類WebControl派生的。
登錄控件ASP.NET2.0提供了一些新的平安控件,使用預定義的登錄控件不需手動定制表單,即可完成登錄及注冊等功能安
全
控
件說
明LoginLogin控件是一個復合控件,包含要求用戶輸入用戶名和密碼的控件LoginStatusLoginStatus控件根據(jù)用戶是否登錄,包含登錄或注銷的超鏈接LoginNameLoginName控件顯示登錄的用戶名LoginViewLoginView控件根據(jù)用戶是否登錄顯示不同的內(nèi)容PasswordRecoveryPasswordRecovery是一個復合控件,用于重新設(shè)置密碼。根據(jù)安全配置,要求用戶回答以前設(shè)置的問題,或通過電子郵件發(fā)送密碼ChangePasswordChangePassword是一個復合控件,允許登錄的用戶更改密碼CreateUserWizardCreateUserWizard是一個創(chuàng)建新用戶向?qū)В梢园延脩粜畔懭隡embershipProvider創(chuàng)立和使用主題利用【樣式生成器】可以設(shè)置窗體的樣式,但這樣定義的樣式只能應用于一個窗體。商業(yè)網(wǎng)站往往包含數(shù)十甚至數(shù)百個窗體,怎樣才能保持這些個窗體在格式上的一致性,這就是“主題〞的作用了。所謂主題,就是一系列定義好的屬性、樣式和圖像。我們可以選擇將它們應用于特定網(wǎng)頁上的控件,也可以選擇將它們應用于整個網(wǎng)站的所有網(wǎng)頁。創(chuàng)立和使用主題1.定義主題主題由一組元素組成:外觀、級聯(lián)樣式表〔CSS〕、圖像和其他資源。主題是在網(wǎng)站或Web效勞器上的特殊目錄中定義的。這個特殊目錄的名稱為App_Themes。主題將至少包含一系列的外觀文件。外觀文件具有文件擴展名.skin,它包含各個控件的屬性設(shè)置??丶庥^設(shè)置類似于控件標記本身,但只包含要作為主題的一局部來設(shè)置的屬性。創(chuàng)立和使用主題有兩種類型的控件外觀:“默認外觀〞和“已命名外觀〞。當向網(wǎng)頁應用主題時,默認外觀自動應用于同一類型的所有控件。如果控件外觀沒有SkinID屬性,那么是默認外觀。已命名外觀是設(shè)置了SkindID屬性的控件外觀。要創(chuàng)立一個主題,首先為網(wǎng)站添加一個App_Themes文件夾;再為主題創(chuàng)立一個子文件夾,在這個子文件夾中創(chuàng)立一個或多個外觀文件來定義控件的屬性。創(chuàng)立和使用主題2.應用主題為一個主題創(chuàng)立好一系列的外觀文件之后,至少可以采用兩種方式將一個主題應用于Web窗體:可以設(shè)置每個頁的@Page屬性,也可以使用Web配置文件,將主題全局性的應用于所有網(wǎng)頁。15.3Web窗體校驗控件使用
和Windows應用程序一樣,校驗用戶輸入的內(nèi)容是否符合一些要求是系統(tǒng)的一個重要內(nèi)容。對Web應用程序來說,還應該考慮是在效勞器端還是在客戶端〔瀏覽器〕進行校驗。進行數(shù)據(jù)校驗有兩種方式,分別是效勞端校驗和客戶端校驗,這是兩種完全不同的方式。在ASP.NET中,提供了驗證控件來檢查用戶輸入的有效性,而不需要程序員編寫大量的驗證函數(shù)驗證控件創(chuàng)立了客戶端JavaScript代碼,在客戶端上驗證輸入,還創(chuàng)立了效勞器端代碼,在效勞器上驗證輸入。把驗證屬性EnableClientScript設(shè)置為false,可以關(guān)閉JavaScript。設(shè)置Page類的ClientTarget屬性,也可以關(guān)閉JavaScript,而不需要對每個驗證控件執(zhí)行改變屬性值的操作。15.3Web窗體校驗控件使用
和Windows應用程序一樣,校驗用戶輸入的內(nèi)容是否符合一些要求是系統(tǒng)的一個重要內(nèi)容。對Web應用程序來說,還應該考慮是在效勞器端還是在客戶端〔瀏覽器〕進行校驗。進行數(shù)據(jù)校驗有兩種方式,分別是效勞端校驗和客戶端校驗,這是兩種完全不同的方式。在ASP.NET中,提供了驗證控件來檢查用戶輸入的有效性,而不需要程序員編寫大量的驗證函數(shù)驗證控件創(chuàng)立了客戶端JavaScript代碼,在客戶端上驗證輸入,還創(chuàng)立了效勞器端代碼,在效勞器上驗證輸入。把驗證屬性EnableClientScript設(shè)置為false,可以關(guān)閉JavaScript。設(shè)置Page類的ClientTarget屬性,也可以關(guān)閉JavaScript,而不需要對每個驗證控件執(zhí)行改變屬性值的操作。15.3Web窗體校驗控件使用
ASP.NET中提供了一組功能強大的數(shù)據(jù)驗證組件,這些控件減輕了類似于ASP時代開發(fā)人員編程的復雜步驟??丶灿腥缦铝N。
●
RequiredFieldValidator
●
CompareValidator
●
RangeValidator
●
RegularExpressionValidator
●
CustomValidator
●
ValidationSummary15.4使用Web窗體訪問數(shù)據(jù)
在ASP.NET中通過使用ADO.NET實現(xiàn)數(shù)據(jù)庫訪問的操作與Windows應用程序?qū)?shù)據(jù)庫的訪問根本一致,可以實現(xiàn)對數(shù)據(jù)庫數(shù)據(jù)的讀取、更改、添加與刪除。Web窗體的
GridView控件使用
Web窗體的也有一個類似Windows窗體的DataGridView控件的控件,稱為GridView控件。在Web窗體應用中,客戶端應用程序〔或瀏覽器〕一般與要用的數(shù)據(jù)庫距離很遠,這就意味著必須高效的利用網(wǎng)絡(luò)帶寬。不能浪費資源獲取大量用戶不想要的數(shù)據(jù)。Web窗體GridView控件支持分頁技術(shù)。Web窗體GridView控件也能在數(shù)據(jù)庫斷開連接時使用??梢詣?chuàng)立一個SqlDataSource對象連接到一個數(shù)據(jù)庫,填充一個DataSet,然后斷開與數(shù)據(jù)庫的連接。可以將SqlDataSource控件中的DataSet對象綁定到一個GridView控件。15.4.2查詢數(shù)據(jù)
在ASP.NET中訪問數(shù)據(jù)庫與在Windows中訪問數(shù)據(jù)庫的操作步驟根本相同:創(chuàng)立DataSet〔數(shù)據(jù)集合〕對象,以存放從數(shù)據(jù)庫中讀取的記錄。創(chuàng)立與數(shù)據(jù)庫的連接,即創(chuàng)立SqlDbConnection或OleDbConnection〔Ole數(shù)據(jù)庫連接〕對象,建立程序與數(shù)據(jù)庫的數(shù)據(jù)傳輸通道。創(chuàng)立SqlDbDataAdapter或OleDbDataAdapt
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO 16834:2025 EN Welding consumables - Wire electrodes,wires,rods and deposits for gas shielded arc welding of high strength steels - Classification
- 2025年度建筑鋁模勞務分包合同勞務人員權(quán)益保障范本
- 2025年度新型過橋借款合同(金融創(chuàng)新版)
- 2025年度文化藝術(shù)品交易合作合同變更書
- 2025年度文化娛樂產(chǎn)業(yè)公司全部股權(quán)轉(zhuǎn)讓及IP開發(fā)合同
- 2025年度建筑物拆除工程承包與綠色建筑重建合同
- 2025年度中小企業(yè)發(fā)展資金借款合同
- 益陽2025年湖南益陽師范高等??茖W校招聘9人筆試歷年參考題庫附帶答案詳解
- 海南2025年海南省港航管理局招聘事業(yè)編制人員3人筆試歷年參考題庫附帶答案詳解
- 江門2025年廣東江門臺山市公安局招聘警務輔助人員筆試歷年參考題庫附帶答案詳解
- 城市綠化與生態(tài)環(huán)境改善
- 2024-2025學年中小學校第二學期師德師風工作計劃:必看!新學期師德師風建設(shè)秘籍大公開(附2月-7月工作安排表)
- 《急性心力衰竭的急救處理》課件
- 小學六年級數(shù)學上冊《簡便計算》練習題(310題-附答案)
- 青海省西寧市海湖中學2025屆中考生物仿真試卷含解析
- 2024年河南省《輔警招聘考試必刷500題》考試題庫及答案【全優(yōu)】
- 2024年中國養(yǎng)老產(chǎn)業(yè)商學研究報告-銀發(fā)經(jīng)濟專題
- 高教版2023年中職教科書《語文》(基礎(chǔ)模塊)下冊教案全冊
- 人教版英語七年級上冊閱讀理解專項訓練16篇(含答案)
- Join-in-六年級下冊教案-Starter-unit-Join-in-us
- 建設(shè)工程檢測試驗收費標準
評論
0/150
提交評論