本書圍繞Web應用程序開發(fā),系統(tǒng)地介紹了ASP.NET技術。全書共11章,主要內(nèi)容包括:ASP.NET簡介、Visual Studio集成開發(fā)環(huán)境、ASP.NET應用程序基礎、服務器控件與用戶控件、Web應用的狀態(tài)管理、主題與母版頁、ASP.NET站點導航技術、ADO.NET數(shù)據(jù)訪問技術、數(shù)據(jù)源控件與數(shù)據(jù)綁定控件、ASP.NET的三層架構及ASP.NET項目開發(fā)實例。本書是一本立體化教材,圍繞每一個知識單元配有短視頻講解,方便讀者學習。同時,每章均配有上機實訓和習題,可幫助讀者對該章所學知識進行鞏固。
本書結構清晰,實例豐富,圖文對照,淺顯易懂,可作為高等院校計算機及相關專業(yè)ASP.NET開發(fā)課程的教材,還可作為有一定的面向對象編程和數(shù)據(jù)庫基礎,想利用ASP.NET技術開發(fā)Web應用程序的軟件開發(fā)人員的入門參考書籍。
本書的MOOC教學視頻、電子教案、示例源代碼、習題答案和上機實訓源代碼可以登錄出版社網(wǎng)站(www.xduph.com)下載。
ASP.NET作為Web應用程序開發(fā)的主流技術之一,為建立和部署企業(yè)級Web應用程序提供所必需的服務。近年來,伴隨著ASP.NET技術的不斷發(fā)展,與之對應的開發(fā)工具也在更新?lián)Q代。使用Visual Studio和C#開發(fā)ASP.NET應用程序是最佳選擇,頗受開發(fā)人員青睞。Visual Studio提供了多種Web應用程序的開發(fā)模式,開發(fā)者能夠方便快速地實現(xiàn)各種復雜的頁面設計和后臺代碼處理功能。
本書系統(tǒng)地介紹了ASP.NET技術。全書共11章,各章內(nèi)容如下:
第1章為ASP.NET簡介。本章介紹B/C和C/S體系架構的區(qū)別及其使用場景、C#語言與.NET框架的特點,重點介紹ASP.NET的三種開發(fā)模式。本書后續(xù)章節(jié)主要圍繞Web Forms開發(fā)模式進行介紹。
第2章為Visual Studio集成開發(fā)環(huán)境。本章通過一個簡單的“HelloWorld”項目的開發(fā),介紹Visual Studio集成開發(fā)環(huán)境的使用及其常用的窗口功能。
第3章為ASP.NET應用程序基礎。本章介紹ASP.NET應用程序與頁面生命周期、ASP.NET Web頁面、Page類的內(nèi)置對象和應用程序的異常處理機制。
第4章為服務器控件與用戶控件。本章主要介紹HTML服務器控件、Web服務器控件和驗證控件的使用,以及用戶控件的創(chuàng)建和應用。
第5章為Web應用的狀態(tài)管理。本章主要介紹客戶端狀態(tài)管理技術和服務器端狀態(tài)管理技術的功能及其異同?蛻舳藸顟B(tài)管理技術包括視圖狀態(tài)、查詢字符串和Cookie技術;服務器端狀態(tài)管理技術包括會話狀態(tài)管理和應用程序狀態(tài)管理。同時,通過購物籃的實現(xiàn)方法,介紹幾種狀態(tài)管理技術的區(qū)別。
第6章為主題與母版頁。本章首先介紹主題的使用方法,利用主題可以為網(wǎng)頁提供一致的外觀;然后介紹母版頁的創(chuàng)建和使用方法,通過母版頁可以為網(wǎng)頁創(chuàng)建一致的布局;最后介紹母版頁的多層嵌套方法。
第7章為ASP.NET站點導航技術。本章首先介紹站點地圖的創(chuàng)建;然后介紹站點導航控件的使用,包括SiteMapPath控件、SiteMapDataSource控件、Menu控件和TreeView控件的使用。
第8章為ADO.NET數(shù)據(jù)訪問技術。本章首先介紹ADO.NET數(shù)據(jù)訪問組件和數(shù)據(jù)訪問模式;然后介紹連接模式對數(shù)據(jù)庫的增、刪、改、查方法;最后介紹DataSet數(shù)據(jù)集和非連接模式訪問數(shù)據(jù)庫的方法。
第9章為數(shù)據(jù)源控件與數(shù)據(jù)綁定控件。本章首先介紹數(shù)據(jù)源控件的使用,包括SqlDataSource控件、ObjectDataSource控件和LinqDataSource控件的使用;然后介紹數(shù)據(jù)綁定控件的使用,包括GridView控件、DetailsView控件、FormView控件、ListView控件和DataPager控件的使用。
第10章為ASP.NET的三層架構。本章首先介紹三層架構的原理、搭建方法和各層的代碼實現(xiàn)方法;然后介紹代碼自動生成工具的使用以及簡化三層架構的搭建過程。
第11章為ASP.NET項目開發(fā)實例。本章通過基于三層架構開發(fā)的學生作品管理平臺介紹ASP.NET Web項目的開發(fā)過程,從而對本書進行總結,讓讀者學會在項目中應用前面所學的各章知識。
為了進一步幫助讀者更好地學習,本書配套了一系列具有MOOC特征的教學微視頻。讀者可以在出版社網(wǎng)站(www.xduph.com)上查閱到本書的配套學習資源,從而快速掌握本書的知識。同時,每個章節(jié)知識點都配有二維碼,讀者通過掃描二維碼的方式,就可以直接觀看對應章節(jié)的教學視頻。
本書以易學易用為重點,充分考慮實際的開發(fā)需求,使用大量實例,引導讀者掌握ASP.NET頁面設計與網(wǎng)站開發(fā)的方法和技巧。讀者在學習本書各章知識點時,可以通過各章所配套的實訓和習題鞏固所學內(nèi)容。同時,本書可作為高校計算機類專業(yè)的教材,通過MOOC平臺的配合使用,可以幫助教師采用翻轉課堂或混合教學兩種教學模式。
本書編者長期從事計算機類專業(yè)的教學科研工作,具有豐富的項目實戰(zhàn)經(jīng)驗。全書由杭州電子科技大學林菲和龔曉君擔任主編,馬虹和孫丹鳳擔任副主編。本書第1~9章由林菲和龔曉君共同編寫,第10章和第11章由馬虹和孫丹鳳共同編寫。浙江交通職業(yè)技術學院的孫勇教授負責全書的主審工作;許宇迪、楊陽和張聰主要負責本書的文字校對、習題參考答案及實訓參考源代碼的整理工作。本書的配套教學視頻得到了杭州電子科技大學MOOC社團成員的大力支持,在此深表感謝!
由于編者水平有限,書中難免存在不當之處,敬請讀者批評指正!
第1章 ASP.NET簡介 1
1.1 B/S與C/S架構模式 1
1.2 C#?語言與?.NET框架 2
1.2.1 C#?語言 2
1.2.2 .NET Framework平臺體系結構 3
1.3 ASP.NET的開發(fā)模式 4
1.3.1 Web Pages開發(fā)模式 4
1.3.2 Web Forms開發(fā)模式 5
1.3.3 MVC開發(fā)模式 7
本章小結 7
習題 8
第2章 Visual Studio集成開發(fā)環(huán)境 9
2.1 Visual Studio集成開發(fā)環(huán)境的
?安裝和配置 9
2.2 創(chuàng)建一個簡單的ASP.NET應用程序 10
2.3 Visual Studio 集成開發(fā)環(huán)境的
?常用窗口 15
2.2.1 服務器資源管理器 15
2.2.2 解決方案資源管理器 15
2.2.3 工具箱 17
2.2.4 Web頁面設計窗口 18
2.2.5 屬性窗口 18
2.2.6 HTML源代碼編輯窗口 19
2.2.7 后臺代碼編輯窗口 20
2.2.8 類視圖 20
2.2.9 對象瀏覽器 21
本章小結 21
本章實訓 Visual Studio集成開發(fā)環(huán)境 21
習題 22
第3章 ASP.NET應用程序基礎 23
3.1 ASP.NET應用程序與頁面生命周期 23
3.1.1 應用程序生命周期 23
3.1.2 Web頁面生命周期 26
3.2 ASP.NET Web頁面 30
3.2.1 Web窗體代碼模型 30
3.2.2 Web窗體的添加 35
3.2.3 Web窗體基本語法結構 35
3.3 Page類的內(nèi)置對象 37
3.3.1 Response對象 38
3.3.2 Request對象 40
3.3.3 Server對象 44
3.4 應用程序的異常處理機制 46
3.4.1 為什么要進行異常處理 46
3.4.2 trycatch異常處理塊 47
3.4.3 頁面級的Page_Error事件處理
異常 48
3.4.4 頁面級的ErrorPage屬性處理異常 49
3.4.5 應用程序級的Application_Error
事件異常處理 50
3.4.6 配置應用程序的異常處理 51
本章小結 52
本章實訓 ASP.NET應用程序基礎 52
習題 52
第4章 服務器控件與用戶控件 55
4.1 服務器控件概述 55
4.2 HTML服務器控件 56
4.2.1 HTML常用標簽 56
4.2.2 HTML服務器控件 57
4.3 Web服務器控件 59
4.3.1 Web服務器控件概述 59
4.3.2 常用標準控件 64
4.4 驗證控件 79
4.4.1 驗證控件概述 79
4.4.2 驗證控件的使用 82
4.4.3 驗證組的使用 91
4.4.4 禁用驗證 92
4.4.5 測試驗證有效性 92
4.5 用戶控件 93
4.5.1 用戶控件的創(chuàng)建 94
4.5.2 用戶控件的使用 97
本章小結 98
本章實訓 服務器控件與用戶控件 98
習題 99
第5章 Web應用的狀態(tài)管理 104
5.1 Web應用的狀態(tài)管理概述 104
5.2 客戶端狀態(tài)管理 105
5.2.1 視圖狀態(tài) 105
5.2.2 查詢字符串 108
5.2.3 Cookie 110
5.2.4 基于Cookie的購物籃實現(xiàn) 117
5.3 服務器端狀態(tài)管理 120
5.3.1 會話狀態(tài) 121
5.3.2 應用程序狀態(tài) 125
5.3.3 基于Session的購物籃實現(xiàn) 128
本章小結 130
本章實訓 Web應用的狀態(tài)管理 130
習題 131
第6章 主題與母版頁 133
6.1 主題 133
6.1.1 主題的創(chuàng)建與應用 133
6.1.2 主題中的外觀文件 135
6.1.3 主題中的CSS樣式文件 137
6.1.4 主題的動態(tài)應用 137
6.2 母版頁 139
6.2.1 創(chuàng)建母版頁 139
6.2.2 創(chuàng)建內(nèi)容頁 143
6.2.3 母版頁的工作原理 144
6.2.4 母版頁和內(nèi)容頁中的事件 145
6.2.5 從內(nèi)容頁訪問母版頁的內(nèi)容 145
6.2.6 母版頁的嵌套 147
本章小結 148
本章實訓 主題與母版頁 148
習題 149
第7章 ASP.NET站點導航技術 152
7.1 ASP.NET站點導航概述 152
7.2 站點地圖 153
7.3 配置多個站點地圖 156
7.3.1 從父站點地圖鏈接到子站點
地圖文件 156
7.3.2 在web.config文件中配置多個
站點地圖 157
7.4 SiteMapPath控件 158
7.5 SiteMapDataSource控件 160
7.6 Menu控件 162
7.6.1 定義Menu菜單內(nèi)容 162
7.6.2 Menu控件樣式 169
7.7 TreeView控件 170
7.7.1 定義TreeView節(jié)點內(nèi)容 170
7.7.2 帶復選框的TreeView控件 176
本章小結 178
本章實訓 ASP.NET站點導航技術 178
習題 179
第8章 ADO.NET數(shù)據(jù)訪問技術 181
8.1 ADO.NET基礎 181
8.1.1 ADO.NET模型 181
8.1.2 ADO.NET的組件 182
8.1.3 ADO.NET的數(shù)據(jù)訪問模式 183
8.2 連接模式數(shù)據(jù)庫訪問 184
8.2.1 使用SqlConnection對象連接
數(shù)據(jù)庫 185
8.2.2 使用SqlCommand對象執(zhí)行
數(shù)據(jù)庫命令 193
8.2.3 使用SqlDataReader讀取數(shù)據(jù) 202
8.2.4 為SqlCommand傳遞參數(shù) 207
8.2.5 使用SqlCommand執(zhí)行存儲過程 211
8.2.6 使用事務處理 214
8.3 斷開模式數(shù)據(jù)庫訪問 218
8.3.1 DataSet數(shù)據(jù)集 218
8.3.2 使用SqlDataAdapter對象執(zhí)行
數(shù)據(jù)庫命令 226
本章小結 237
本章實訓 ADO.NET數(shù)據(jù)訪問技術 237
習題 239
第9章 數(shù)據(jù)源控件與數(shù)據(jù)綁定控件 244
9.1 數(shù)據(jù)源控件 244
9.1.1 SqlDataSource數(shù)據(jù)源控件 245
9.1.2 ObjectDataSource數(shù)據(jù)源控件 258
9.1.3 LinqDataSource數(shù)據(jù)源控件 261
9.2 數(shù)據(jù)綁定控件(Repeater控件的使用) 265
9.2.1 GridView控件 265
9.2.2 DetailsView控件 276
9.2.3 FormView控件 282
9.2.4 ListView控件和DataPager控件 285
本章小結 295
本章實訓 數(shù)據(jù)源控件與數(shù)據(jù)綁定控件 295
習題 295
第10章 ASP.NET的三層架構 299
10.1 三層架構簡介 299
10.1.1 什么是三層架構 299
10.1.2 三層架構的優(yōu)缺點 300
10.2 搭建三層架構 301
10.3 三層架構的實現(xiàn) 306
10.3.1 Model層的實現(xiàn) 306
10.3.2 數(shù)據(jù)庫操作類的實現(xiàn) 307
10.3.3 數(shù)據(jù)訪問層的實現(xiàn) 309
10.3.4 業(yè)務邏輯層的實現(xiàn) 311
10.3.5 表示層的實現(xiàn) 312
10.4 代碼自動生成工具介紹 316
10.4.1 動軟?.Net代碼生成器軟件安裝 316
10.4.2 數(shù)據(jù)庫連接 316
10.4.3 項目框架自動生成 319
10.4.4 批量代碼生成 323
10.4.5 單表代碼生成 324
本章小結 327
本章實訓 ASP.NET三層架構 327
習題 328
第11章 ASP.NET項目開發(fā)實例 329
11.1 系統(tǒng)概述與功能模塊劃分 329
11.1.1 系統(tǒng)概述 329
11.1.2 系統(tǒng)功能模塊劃分 329
11.2 數(shù)據(jù)庫與模型設計和實現(xiàn) 329
11.2.1 數(shù)據(jù)庫表結構設計 330
11.2.2 模型設計 331
11.3 數(shù)據(jù)訪問層的設計與實現(xiàn) 335
11.3.1 基本數(shù)據(jù)訪問類的實現(xiàn) 335
11.3.2 各對象對應數(shù)據(jù)訪問類實現(xiàn) 342
11.4 業(yè)務邏輯層的設計與實現(xiàn) 351
11.5 系統(tǒng)頁面設計與功能實現(xiàn) 355
11.5.1 添加空網(wǎng)站與基本配置 355
11.5.2 網(wǎng)站主頁設計 355
11.5.3 管理員端相關頁面設計與
功能實現(xiàn) 357
11.5.4 學生端相關頁面設計與
功能實現(xiàn) 391
11.5.5 網(wǎng)站錯誤頁面 402
11.6 單元測試 403
11.7 系統(tǒng)部署與發(fā)布 406
本章小結 412
本章實訓 ASP.NET項目開發(fā)實例 412
習題 412
參考文獻 414