Web程序設計——ASP.NET實用網站開發(fā)(第3版)—微課版
定 價:49 元
叢書名:21世紀高等學校計算機專業(yè)核心課程規(guī)劃教材
- 作者:沈士根、葉曉彤
- 出版時間:2018/9/1
- ISBN:9787302506799
- 出 版 社:清華大學出版社
- 中圖法分類:TP393.092.2
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
ASP.NET是Web應用程序開發(fā)的主流技術之一。本書以Visual Studio Community 2017為開發(fā)平臺,以技術應用能力培養(yǎng)為主線,介紹網站配置、開發(fā)環(huán)境、jQuery、Bootstrap、與ASP.NET結合的C#基礎、ASP.NET頁面調試、ASP.NET常用服務器控件、驗證控件、狀態(tài)管理、LINQ數據訪問、數據綁定、ASP.NET三層架構、主題、母版、用戶控件、網站導航、ASP.NET Ajax、Web服務、WCF服務、文件處理等,*后的MyPetShop應用程序綜合了開發(fā)全過程,提供了基于ASP.NET三層架構開發(fā)Web應用程序的學習模板。書中包含的實例來自作者多年的教學積累和項目開發(fā)經驗,頗具實用性。
為方便教師教學和讀者自學,本書通過嵌入二維碼形式提供了書中重點內容的講解視頻,還有配套的實驗指導書《Web程序設計ASP.NET上機實驗指導(第3版)》,以及配套的免費課件、教學大綱、實驗大綱、實例源代碼等。
本書概念清晰、邏輯性強,內容由淺入深、循序漸進,適合作為高等院校計算機相關專業(yè)的Web程序設計、網絡程序設計、Web數據庫應用等課程的教材,也適合對Web應用程序開發(fā)有興趣的人員自學使用。
《Web程序設計ASP.NET實用網站開發(fā)(第3版)微課版》是浙江省普通高校十三五新形態(tài)教材,為方便教師教學和讀者自學,本書通過嵌入二維碼形式提供了實例講解等教材重點內容的微課,還有配套的實驗指導書《Web程序設計ASP.NET上機實驗指導(第3版)》,以及免費配套的課件、教學大綱、實驗大綱、實例源代碼等。
目前,ASP.NET是進行Web應用程序開發(fā)的主流技術之一。該技術易學易用、開發(fā)效率高,可配合任何一種.NET語言進行開發(fā)。
基于Visual Studio Community 2017開發(fā)平臺的ASP.NET建立在.NET Framework 4.6基礎上,強調開發(fā)人員的工作效率,著力提升系統(tǒng)運行性能和可擴展性。通過使用LINQ技術,可提供跨各種數據源和數據格式查詢數據的一致模型。它包含的ASP.NET Ajax極大地簡化了在ASP.NET網站中對頁面局部刷新效果的實現。使用Visual Studio Community 2017,能很好地支持XHTML5、CSS3、jQuery、Bootstrap等,實現JavaScript的智能編程提示,還支持開發(fā)適合物聯(lián)網應用和智能手機應用等連接到互聯(lián)網的基于云的現代應用程序,能實現Windows、Mac和Linux等操作系統(tǒng)上的跨平臺開發(fā)和部署。
本書緊扣基于Visual Studio Community 2017的ASP.NET進行Web應用程序開發(fā)所需要的知識、技能和素質要求,以技術應用能力培養(yǎng)為主線構建教材內容。強調以學生為主體,覆蓋基礎知識和理論體系,突出實用性和可操作性,強化實例教學,通過實際訓練加強對理論知識的理解。注重知識和技能結合,把知識點融入實際項目的開發(fā)中。在這種思想指導下,本書內容組織如下:
第1章介紹基于Visual Studio Community 2017的ASP.NET的運行、開發(fā)環(huán)境和網站配置等。
第2章以知識夠用為原則,介紹采用ASP.NET技術進行Web應用程序開發(fā)的準備知識,主要包括核心的XHTML5元素、頁面模型、實現布局的CSS3、提升用戶體驗的JavaScript、廣受歡迎的jQuery、標準的數據交換格式語言XML、配置文件、全局應用程序類文件、主流的前端框架Bootstrap等。
第3章給出了C#的濃縮版,并且在介紹時直接與ASP.NET 技術結合,還介紹了ASP.NET頁面調試技術。
第4章和第5章介紹ASP.NET標準控件和驗證控件的運用。
第6章介紹ASP.NET頁面運行時的HTTP請求、響應、狀態(tài)管理機制。
第7章介紹利用數據源控件和LINQ技術訪問數據庫的方法,還介紹利用LINQ技術訪問XML數據的方法。其實,熟練掌握LINQ技術可實現任何數據訪問要求。
第8章介紹利用數據綁定控件呈現數據庫中數據的技術。
第9章以MyPetShop應用程序中的用戶管理為例,介紹當前普遍使用的ASP.NET三層架構,以及利用ASP.NET三層架構進行Web應用程序開發(fā)的方法。
第10章從網站整體風格統(tǒng)一角度介紹主題、母版和用戶控件的運用。
第11章介紹網站導航技術。
第12章介紹能提升用戶體驗的ASP.NET Ajax技術。
第13章介紹Internet上廣泛調用的Web服務和Microsoft公司推出的WCF服務。
第14章介紹Web服務器上的文件處理。
第15章縱覽全局,通過MyPetShop應用程序綜合實例,說明了基于ASP.NET三層架構進行Web應用程序開發(fā)的全過程,給出了一個很好的學習模板。
本書以Visual Studio Community 2017為開發(fā)平臺,使用C#開發(fā)語言,提供大量來源于作者多年教學積累和項目開發(fā)經驗的實例。
為方便教師教學和讀者自學,本書通過嵌入二維碼形式提供了書中重點內容的講解視頻,還有配套的實驗指導書《Web程序設計ASP.NET上機實驗指導(第3版)》,以及配套的免費課件、教學大綱、實驗大綱、實例源代碼等。有關課件、實例源代碼等可到清華大學出版社網站http://www.tup.com.cn下載。
本書概念清晰、邏輯性強,內容由淺入深、循序漸進,適合作為高等院校計算機相關專業(yè)的Web程序設計、網絡程序設計、Web數據庫應用等課程的教材,也適合對Web應用程序開發(fā)有興趣的人員自學使用。
本書由沈士根負責統(tǒng)稿,其中,沈士根編寫第1~9章,葉曉彤編寫第10~15章。
本書第1版、第2版,以及配套的《Web程序設計ASP.NET上機實驗指導》第1版、第2版分別在2009年和2014年出版,主教材累計印刷21次,配套的上機指導教材累計印刷14次,受到了眾多高校和廣大讀者的歡迎,很多不相識的讀者來郵件與我們交流并給出了寶貴意見。在此,表示衷心感謝。
希望本書能成為初學者從入門到精通的階梯。對于書中存在的疏漏及不足之處,歡迎讀者發(fā)郵件與我們交流,以便再版時改進。我們的郵箱是ssgwcyxxd@126.com。
作 者
2018年3月
第1章 ASP.NET運行及開發(fā)環(huán)境 1
1.1 ASP.NET概述 1
1.1.1 靜態(tài)頁面和動態(tài)頁面 1
1.1.2 .NET Framework 1
1.1.3 ASP.NET特性 2
1.1.4 ASP.NET的開發(fā)模式 2
1.2 IIS 3
1.2.1 IIS 7.5的安裝 3
1.2.2 IIS 7.5中的網站、Web應用程序和虛擬目錄 4
1.2.3 IIS Express 7
1.3 Visual Studio Community 2017 8
1.3.1 開發(fā)環(huán)境概覽 8
1.3.2 使用解決方案管理VSC 2017中新建的網站 10
1.3.3 發(fā)布Web應用 12
1.3.4 復制網站 14
1.4 小結 14
1.5 習題 15
第2章 ASP.NET網站文件、jQuery和Bootstrap 17
2.1 .html文件和XHTML5 17
2.1.1 .html文件結構 17
2.1.2 常用的XHTML5元素 18
實例2-1 認識常用的XHTML5元素 19
2.2 .aspx文件 20
2.2.1 單文件頁模型 20
實例2-2 熟悉單文件頁模型 21
2.2.2 代碼隱藏頁模型 22
實例2-3 熟悉代碼隱藏頁模型 22
2.3 .css文件和CSS常識 23
2.3.1 定義CSS3樣式 23
2.3.2 CSS3樣式位置 24
實例2-4 運用頁面樣式 25
實例2-5 運用外部樣式表 26
2.4 .js文件和JavaScript常識 27
2.4.1 JavaScript代碼位置 27
實例2-6 熟悉元素中的JavaScript代碼 27
實例2-7 熟悉元素中的JavaScript代碼 28
實例2-8 運用獨立的.js文件 29
2.4.2 JavaScript運用實例 29
實例2-9 實現圖片動態(tài)變化效果 29
實例2-10 實現一個簡易時鐘 30
2.5 jQuery 31
2.5.1 jQuery基礎語法 32
2.5.2 jQuery運用實例 33
實例2-11 利用jQuery管理XHTML元素 33
實例2-12 利用jQuery實現一個時間數據來源于服務器端的時鐘 34
2.6 .xml文件和XML常識 36
實例2-13 表達一個XML格式的早餐菜單 36
2.7 Web.config 37
2.8 Global.asax 37
2.9 Bootstrap 38
實例2-14 利用Bootstrap設計表單 38
2.10 小結 40
2.11 習題 40
第3章 C#和ASP.NET的結合 43
3.1 C#概述 43
3.2 .NET Framework命名空間 43
3.3 編程規(guī)范 44
3.3.1 程序注釋 44
3.3.2 命名規(guī)則 44
3.4 常量與變量 45
3.4.1 常量聲明 45
3.4.2 變量聲明 46
3.4.3 修飾符 46
3.4.4 局部變量作用范圍 46
3.5 數據類型 47
3.5.1 值類型 47
實例3-1 運用枚舉類型變量 48
3.5.2 引用類型 49
3.5.3 裝箱和拆箱 50
3.6 運算符 51
3.7 流程控制 52
3.7.1 選擇結構 52
實例3-2 運用switch語句 53
3.7.2 循環(huán)結構 54
實例3-3 運用while語句 54
實例3-4 運用for語句 56
實例3-5 運用foreach語句 57
3.7.3 異常處理 57
實例3-6 運用throw語句 58
實例3-7 運用try…catch…finally結構 59
3.8 自定義ASP.NET類 60
3.8.1 類的常識 61
3.8.2 屬性 61
實例3-8 定義Account類的屬性 61
3.8.3 構造函數 62
實例3-9 定義Account類的構造函數 62
3.8.4 方法 63
實例3-10 定義Account類的存款和取款方法 63
實例3-11 結合Account類和ASP.NET頁面 64
3.8.5 事件 65
實例3-12 在AccountEvent類中增加賬戶金額不足事件并運用事件 65
3.8.6 繼承 67
實例3-13 實現繼承類 67
3.9 ASP.NET頁面調試 67
3.10 小結 68
3.11 習題 69
第4章 ASP.NET標準控件 71
4.1 ASP.NET頁面事件處理概述 71
4.1.1 ASP.NET頁面事件 71
4.1.2 IsPostBack屬性 71
實例4-1 運用IsPostBack屬性 72
4.2 ASP.NET服務器控件概述 73
4.2.1 HTML服務器控件簡介 73
4.2.2 Web服務器控件簡介 73
4.3 常用ASP.NET標準控件 73
4.3.1 Label控件 74
實例4-2 通過鍵盤快捷鍵激活特定文本框 74
4.3.2 TextBox控件 75
實例4-3 綜合運用TextBox控件 75
4.3.3 Button、LinkButton和ImageButton控件 77
實例4-4 利用Button控件執(zhí)行客戶端腳本 77
4.3.4 DropDownList控件 78
實例4-5 實現聯(lián)動的下拉列表 79
4.3.5 ListBox控件 81
實例4-6 實現數據項在ListBox控件之間的移動 82
4.3.6 CheckBox和CheckBoxList控件 83
實例4-7 運用CheckBoxList控件 83
4.3.7 RadioButton和RadioButtonList控件 84
4.3.8 Image和ImageMap控件 85
實例4-8 利用ImageMap控件設計導航欄 86
4.3.9 HyperLink控件 86
實例4-9 組合使用HyperLink和Image控件 87
4.3.10 Table控件 87
實例4-10 動態(tài)生成表格 87
4.3.11 Panel和PlaceHolder控件 89
實例4-11 利用Panel實現簡易注冊頁面 89
實例4-12 利用PlaceHolder動態(tài)添加控件 91
4.4 小結 92
4.5 習題 93
第5章 ASP.NET窗體驗證 95
5.1 窗體驗證概述 95
5.2 ASP.NET服務器驗證控件 96
5.2.1 RequiredFieldValidator控件 96
實例5-1 禁止空數據且同時要改變初始值 97
5.2.2 CompareValidator控件 98
實例5-2 運用CompareValidator控件 98
5.2.3 RangeValidator控件 99
實例5-3 運用RangeValidator控件 99
5.2.4 RegularExpressionValidator控件 100
實例5-4 驗證電子郵件地址 101
5.2.5 CustomValidator控件 102
實例5-5 驗證必須輸入一個偶數 102
5.2.6 ValidationSummary控件 105
實例5-6 綜合運用驗證控件 105
5.3 小結 108
5.4 習題 108
第6章 HTTP請求、響應及狀態(tài)管理 110
6.1 HTTP請求 110
實例6-1 利用QueryString在頁面間傳遞數據信息 110
實例6-2 利用ServerVariables和Browser返回服務器端和客戶端信息 112
6.2 HTTP響應 113
實例6-3 利用Write()方法輸出XHTML文本 113
實例6-4 利用Redirect()方法重定向頁面 114
6.3 HttpServerUtility 115
實例6-5 運用HttpServerUtility對象 116
6.4 跨頁面提交 117
實例6-6 運用跨頁面提交技術 117
6.5 狀態(tài)管理 119
6.5.1 ViewState 119
6.5.2 HiddenField控件 120
6.5.3 Cookie 120
實例6-7 利用Cookie限制頁面訪問 121
6.5.4 Session 123
實例6-8 利用Session限制頁面訪問 124
6.5.5 Application 126
實例6-9 統(tǒng)計網站在線人數 126
6.6 小結 127
6.7 習題 128
第7章 數據訪問 130
7.1 數據訪問概述 130
7.2 建立SQL Server 2016 Express數據庫 131
7.3 使用數據源控件實現數據訪問 133
實例7-1 利用LinqDataSource和GridView顯示表數據 133
7.4 使用LINQ實現數據訪問 135
7.4.1 LINQ查詢表達式 135
7.4.2 LINQ to SQL概述 136
7.4.3 利用LINQ to SQL查詢數據 137
實例7-2 利用LINQ to SQL實現投影 137
實例7-3 利用LINQ to SQL實現選擇 138
實例7-4 利用LINQ to SQL實現排序 138
實例7-5 利用LINQ to SQL實現分組 138
實例7-6 利用LINQ to SQL實現聚合操作 139
實例7-7 利用LINQ to SQL實現直接引用對象連接 140
實例7-8 利用LINQ to SQL實現join連接 140
實例7-9 利用LINQ to SQL實現模糊查詢 141
7.4.4 利用LINQ to SQL管理數據 141
實例7-10 利用LINQ to SQL插入數據 141
實例7-11 利用LINQ to SQL修改數據 142
實例7-12 利用LINQ to SQL刪除數據 142
實例7-13 利用LINQ to SQL調用存儲過程 143
7.4.5 LINQ to XML概述 143
7.4.6 利用LINQ to XML管理XML文檔 144
實例7-14 利用LINQ to XML創(chuàng)建XML文檔 144
實例7-15 利用LINQ to XML查詢指定屬性的元素 145
實例7-16 利用LINQ to XML插入元素 146
實例7-17 利用LINQ to XML修改元素 146
實例7-18 利用LINQ to XML刪除元素 147
7.5 小結 147
7.6 習題 147
第8章 數據綁定 150
8.1 數據綁定概述 150
8.2 ListControl類控件 150
實例8-1 結合使用DropDownList和LINQ顯示數據 151
實例8-2 根據選擇項填充列表框內容 152
8.3 GridView控件 154
8.3.1 分頁和排序 154
實例8-3 分頁和排序GridView中數據 154
8.3.2 定制數據綁定列 156
實例8-4 自定義GridView數據綁定列 156
8.3.3 使用模板列 158
實例8-5 運用GridView模板列 159
8.3.4 利用GridView編輯、刪除數據 162
實例8-6 為GridView中刪除鏈接按鈕添加客戶端提示信息 162
實例8-7 結合GridView和獨立頁修改數據 164
8.3.5 顯示主從表 167
實例8-8 在同一頁顯示主從表 167
實例8-9 在不同頁顯示主從表 169
8.4 DetailsView控件 172
實例8-10 結合GridView和DetailsView管理數據 172
8.5 小結 175
8.6 習題 175
第9章 ASP.NET三層架構 177
9.1 ASP.NET三層架構概述 177
9.2 搭建ASP.NET三層架構 178
實例9-1 搭建基于ASP.NET三層架構的MyPetShop 178
9.3 基于ASP.NET三層架構的用戶管理 181
9.3.1 用戶注冊 181
實例9-2 實現MyPetShop的用戶注冊功能 181
9.3.2 用戶登錄 186
實例9-3 實現MyPetShop的用戶登錄功能 186
9.3.3 用戶登錄狀態(tài)和權限 189
實例9-4 根據不同用戶呈現不同的登錄狀態(tài)和權限 190
9.3.4 用戶密碼修改 192
實例9-5 修改已登錄一般用戶的密碼 192
9.3.5 用戶密碼重置 195
實例9-6 重置用戶密碼 195
9.4 小結 201
9.5 習題 201
第10章 主題、母版和用戶控件 203
10.1 主題 203
10.1.1 主題概述 203
10.1.2 自定義主題 203
10.1.3 使用主題 204
實例10-1 動態(tài)切換主題 205
10.2 母版頁 207
10.2.1 母版頁概述 207
10.2.2 創(chuàng)建母版頁 207
實例10-2 創(chuàng)建母版頁 207
10.2.3 創(chuàng)建內容頁 208
實例10-3 創(chuàng)建內容頁 208
10.3 用戶控件 209
10.3.1 用戶控件概述 209
10.3.2 創(chuàng)建用戶控件 210
10.3.3 使用用戶控件 211
實例10-4 使用用戶控件 212
10.4 小結 212
10.5 習題 213
第11章 網站導航 215
11.1 網站地圖 215
11.1.1 網站地圖文件 215
實例11-1 創(chuàng)建網站地圖 216
11.1.2 嵌套網站地圖文件 217
實例11-2 創(chuàng)建嵌套網站地圖 217
11.2 SiteMapPath控件顯示導航 218
實例11-3 利用SiteMapPath控件顯示導航 218
11.3 TreeView控件顯示導航 219
11.3.1 TreeView控件 219
實例11-4 運用TreeView控件 220
11.3.2 使用TreeView控件實現導航 223
實例11-5 利用TreeView控件顯示導航 223
11.4 Menu控件顯示導航 223
實例11-6 利用Menu控件顯示導航菜單 224
11.5 在母版頁中使用網站導航 224
實例11-7 實現基于母版頁的網站導航 224
11.6 小結 226
11.7 習題 226
第12章 ASP.NET Ajax 228
12.1 Ajax基礎 228
12.1.1 Ajax概述 228
12.1.2 ASP.NET Ajax技術 229
12.2 ASP.NET Ajax服務器控件 229
12.2.1 ScriptManager控件 229
12.2.2 UpdatePanel控件 231
實例12-1 使用內部按鈕刷新UpdatePanel控件 232
實例12-2 使用外部按鈕刷新UpdatePanel控件 233
實例12-3 在同一個頁面中使用多個UpdatePanel控件 235
12.2.3 Timer控件 236
實例12-4 運用Timer控件 237
12.2.4 UpdateProgress控件 239
實例12-5 運用UpdateProgress控件 239
12.3 AjaxControlToolkit程序包 241
實例12-6 運用CalendarExtender控件 243
實例12-7 運用PasswordStrength控件 244
12.4 小結 246
12.5 習題 246
第13章 Web服務和WCF服務 248
13.1 Web服務 248
13.1.1 Web服務概述 248
13.1.2 建立ASP.NET Web服務 249
實例13-1 建立ASP.NET Web服務 249
13.1.3 調用ASP.NET Web服務 251
實例13-2 調用ASP.NET Web服務 252
實例13-3 運用基于Web服務的AutoCompleteExtender控件 253
13.2 WCF服務 256
13.2.1 建立WCF服務 257
實例13-4 建立WCF服務 257
13.2.2 調用WCF服務 259
實例13-5 調用WCF服務 259
13.3 小結 261
13.4 習題 261
第14章 文件處理 263
14.1 驅動器、文件夾和文件操作 263
14.1.1 獲取驅動器信息 263
實例14-1 顯示Web服務器上所有驅動器的信息 263
14.1.2 文件夾操作 265
實例14-2 計算指定文件夾的大小 266
14.1.3 文件操作 269
實例14-3 文件的創(chuàng)建、復制、刪除和移動操作 270
14.2 讀寫文件 273
14.2.1 Stream類 273
實例14-4 利用FileStream類讀寫文件 275
14.2.2 Reader和Writer類 278
實例14-5 利用StreamReader和StreamWriter讀寫文本文件 279
實例14-6 利用BinaryReader和BinaryWriter讀寫二進制數據文件 280
14.3 文件上傳 282
實例14-7 利用FileUpload實現文件上傳 282
14.4 小結 284
14.5 習題 284
第15章 MyPetShop應用程序 286
15.1 系統(tǒng)總體設計和開發(fā)思路 286
15.1.1 系統(tǒng)功能模塊設計 286
15.1.2 用戶控件設計 287
15.1.3 系統(tǒng)數據庫總體設計 288
15.1.4 Web.config配置文件 288
15.1.5 基于VSC 2017開發(fā)MyPetShop應用程序的總體思路 289
15.2 MyPetShop.mdf數據庫設計 290
15.2.1 數據表設計 290
15.2.2 數據表聯(lián)系設計 292
15.3 用戶控件設計 293
15.3.1 熱銷商品自動定時刷新用戶控件 293
15.3.2 商品分類列表用戶控件 293
15.3.3 最新商品列表用戶控件 293
15.3.4 商品分類及商品導航用戶控件 293
15.3.5 網站導航用戶控件 294
15.3.6 用戶狀態(tài)用戶控件 294
15.3.7 天氣預報用戶控件 294
15.4 前臺顯示頁面設計 295
15.4.1 母版頁 295
15.4.2 首頁 295
15.4.3 商品詳細信息頁面 296
15.4.4 商品搜索頁面 297
15.5 用戶注冊和登錄模塊設計 298
15.5.1 注冊新用戶 298
15.5.2 用戶登錄 298
15.5.3 修改用戶密碼 299
15.5.4 找回用戶密碼 299
15.5.5 退出系統(tǒng) 300
15.6 購物車模塊設計 300
15.6.1 購物車存儲設計與實現 300
15.6.2 購物車頁面設計 300
15.6.3 購物車功能的設計與實現 301
15.7 訂單處理模塊設計 301
15.7.1 創(chuàng)建訂單 302
15.7.2 查看訂單 302
15.8 后臺管理模塊設計 303
15.8.1 商品分類管理 303
15.8.2 供應商信息管理 303
15.8.3 商品信息管理 304
15.8.4 訂單管理 305
15.9 小結 307
15.10 習題 307