ASP.NET MVC 5高級編程(第5版)

ASP.NET MVC 5高級編程(第5版)

《ASP.NET MVC 5高級編程(第5版)》是2015年清華大學出版社出版的圖書。

基本介紹

  • 書名:ASP.NET MVC 5高級編程(第5版)
  • ISBN:9787302390626
  • 定價:59.8元
  • 出版社:清華大學出版社
  • 出版時間:2015年
  • 裝幀:平裝
圖書詳細信息,圖書簡介,目錄,

圖書詳細信息

ISBN:9787302390626
定價:59.8元
裝幀:平裝
印次:1-1
印刷日期:2015-1-23

圖書簡介

作為Microsoft備受歡迎的MVC技術的最新版本,MVC 5是一個成熟的Web應用程式框架,支持快速的、TDD友好的開發。MVC允許開發人員創建動態的、數據驅動的網站。這樣的網站具有複雜的功能,如單頁面應用程式、針對移動設備最佳化、適應性呈現等。本書還包括了MVC 5.1和MVC 5.2中的一些新特性。通過採用分步驟講解的方法,指導讀者如何充分利用MVC。

目錄

第1章入門 1
1.1ASP.NETMVC簡介 1
1.1.1ASP.NETMVC如何適應ASP.NET 1
1.1.2MVC模式簡介 2
1.1.3MVC在Web框架中的套用 2
1.1.4ASP.NETMVC5的發展歷程 3
1.1.5ASP.NETMVC4概述 6
1.1.6開源發布 9
1.2ASP.NETMVC5概述 9
1.2.1OneASP.NET 10
1.2.2新的Web項目體驗 10
1.2.3ASP.NETIdentity 10
1.2.4Bootstrap模板 11
1.2.5特性路由 13
1.2.6ASP.NET基架 13
1.2.7身份驗證過濾器 13
1.2.8過濾器重寫 13
1.3安裝MVC5和創建應用程式 13
1.3.1ASP.NETMVC5的軟體需求 13
1.3.2安裝ASP.NETMVC5 14
1.3.3創建ASP.NETMVC5應用程式 14
1.3.4NewASP.NETProject對話框 15
1.4ASP.NETMVC應用程式的結構 19
1.4.1ASP.NETMVC和約定 21
1.4.2約定優於配置 21
1.4.3約定簡化通信 22
1.5小結 22
第2章控制器 23
2.1控制器的角色 23
2.2示例應用程式:MVCMusicStore 25
2.3控制器基礎 28
2.3.1簡單示例:HomeController 28
2.3.2創建第一個控制器 30
2.3.3控制器操作中的參數 33
2.4小結 35
第3章視圖 36
3.1視圖的作用 37
3.2視圖的基礎知識 37
3.3理解視圖約定 40
3.4強類型視圖 41
3.4.1ViewBag的不足 41
3.4.2理解ViewBag、ViewData和ViewDataDictionary 43
3.5視圖模型 44
3.6添加視圖 45
3.7Razor視圖引擎 47
3.7.1Razor的概念 48
3.7.2代碼表達式 49
3.7.3HTML編碼 50
3.7.4代碼塊 52
3.7.5Razor語法示例 52
3.7.6布局 54
3.7.7ViewStart 56
3.8指定部分視圖 57
3.9小結 58
第4章模型 59
4.1為MVCMusicStore建模 60
4.2為商店管理器構造基架 63
4.2.1基架的含義 63
4.2.2基架和實體框架 64
4.2.3執行基架模板 66
4.2.4執行基架代碼 71
4.3編輯專輯 75
4.3.1創建編輯專輯的資源 76
4.3.2回響編輯時的POST請求 79
4.4模型綁定 80
4.4.1DefaultModelBinder 81
4.4.2顯式模型綁定 82
4.5小結 84
第5章表單和HTML輔助方法 85
5.1表單的使用 85
5.1.1action和method特性 86
5.1.2GET方法還是POST方法 86
5.2HTML輔助方法 89
5.2.1自動編碼 90
5.2.2輔助方法的使用 91
5.2.3HTML輔助方法的工作原理 91
5.2.4設定專輯編輯表單 92
5.2.5添加輸入元素 93
5.2.6輔助方法、模型和視圖數據 98
5.2.7強類型輔助方法 100
5.2.8輔助方法和模型元數據 101
5.2.9模板輔助方法 101
5.2.10輔助方法和ModelState 102
5.3其他輸入輔助方法 103
5.3.1Html.Hidden 103
5.3.2Html.Password 103
5.3.3Html.RadioButton 103
5.3.4Html.CheckBox 104
5.4渲染輔助方法 104
5.4.1Html.ActionLink和Html.RouteLink 104
5.4.2URL輔助方法 105
5.4.3Html.Partial和Html.RenderPartial 106
5.4.4Html.Action和Html.RenderAction 107
5.5小結 108
第6章數據註解和驗證 109
6.1為驗證註解訂單 110
6.1.1驗證註解的使用 112
6.1.2 自定義錯誤提示訊息及其本地化 116
6.1.3註解的後台原理 117
6.1.4 控制器操作和驗證錯誤 118
6.2自定義驗證邏輯 120
6.2.1自定義註解 120
6.2.2 IValidatableObject 123
6.3顯示和編輯註解 124
6.3.1Display 124
6.3.2ScaffoldColumn 125
6.3.3DisplayFormat 125
6.3.4ReadOnly 125
6.3.5DataType 126
6.3.6UIHint 126
6.3.7HiddenInput 126
6.4小結 126
第7章成員資格、授權和安全性 127
7.1安全性:無趣、但極其重要 127
7.2使用Authorize特性登錄 129
7.2.1保護控制器操作 129
7.2.2Authorize特性在表單身份驗證和AccountController控制器中的用法 133
7.2.3WindowsAuthentication 134
7.3要求角色成員使用Authorize特性 137
7.4擴展用戶身份 138
7.4.1存儲額外的用戶資料數據 139
7.4.2持久化控制 139
7.4.3管理用戶和角色 139
7.5通過OAuth和OpenID的外部登錄 139
7.5.1註冊外部登錄提供器 141
7.5.2配置OpenID提供器 142
7.5.3配置OAuth提供器 144
7.5.4 外部登錄的安全性 144
7.6Web應用程式中的安全向量 145
7.6.1威脅:跨站腳本 146
7.6.2威脅:跨站請求偽造 154
7.6.3威脅:cookie盜竊 158
7.6.4威脅:重複提交 160
7.6.5威脅:開放重定向 162
7.7適當的錯誤報告和堆疊跟蹤 166
7.7.1使用配置轉換 167
7.7.2在生產環境中使用Retail部署配置 168
7.7.3使用專門的錯誤日誌系統 168
7.8安全回顧和有用資源 168
7.9小結 169
第8章Ajax 171
8.1jQuery 172
8.1.1jQuery的特性 172
8.1.2非侵入式JavaScript 175
8.1.3jQuery的用法 176
8.2Ajax輔助方法 181
8.2.1在項目中添加非侵入式Ajax腳本 182
8.2.2Ajax的ActionLink方法 183
8.2.3HTML5特性 185
8.2.4Ajax表單 186
8.3客戶端驗證 188
8.3.1jQuery驗證 188
8.3.2自定義驗證 191
8.4輔助方法之外 196
8.4.1jQueryUI 196
8.4.2使用jQueryUI實現自動完成部件 197
8.4.3JSON和客戶端模板 200
8.4.4Bootstrap外掛程式 204
8.5提高Ajax性能 206
8.5.1使用內容分發網路 206
8.5.2腳本最佳化 206
8.5.3捆綁和微小 207
8.6小結 208
第9章路由 209
9.1統一資源定位符——URL 209
9.2路由概述 210
9.2.1對比路由和URL重寫 211
9.2.2路由方法 211
9.2.3定義特性路由 212
9.2.4定義傳統路由 221
9.2.5選擇特性路由還是傳統路由 229
9.2.6路由命名 229
9.2.7MVC區域 231
9.2.8catch-all參數 233
9.2.9段中的多個路由參數 233
9.2.10StopRoutingHandler和IgnoreRoute 234
9.2.11路由的調試 235
9.3揭秘路由如何生成URL 236
9.3.1URL生成的高層次概述 237
9.3.2URL生成詳解 237
9.3.3外界路由值 238
9.3.4Route類生成URL的若干示例 240
9.4揭秘路由如何綁定到操作 241
9.4.1高層次請求的路由管道 241
9.4.2路由數據 242
9.5自定義路由約束 242
9.6WebForms和路由機制 243
9.7小結 244
第10章NuGet 245
10.1NuGet概述 245
10.2以包的形式添加庫 246
10.2.1查找包 247
10.2.2安裝包 248
10.2.3更新包 251
10.2.4包恢復 251
10.2.5包管理器控制台的用法 252
10.3創建包 254
10.3.1打包項目 255
10.3.2打包資料夾 256
10.3.3配置檔案和原始碼轉換 256
10.3.4NuSpec檔案 257
10.3.5元數據 258
10.3.6依賴庫 259
10.3.7指定要包含的檔案 260
10.3.8工具 260
10.3.9框架和輪廓定位 263
10.3.10預發布包 264
10.4發布包 264
10.4.1發布到NuGet.org 265
10.4.2使用NuGet.exe 267
10.4.3包瀏覽器的用法 268
10.5小結 269
第11章ASP.NETWebAPI 271
11.1定義ASP.NETWebAPI 272
11.2WebAPI入門 272
11.3編寫API控制器 273
11.3.1檢查示例ValuesController 273
11.3.2異步設計:
IHttpController 274
11.3.3傳入的操作參數 277
11.3.4操作返回值、錯誤和異步 277
11.4配置WebAPI 279
11.4.1 Web託管WebAPI的配置 279
11.4.2自託管WebAPI的配置 280
11.5向WebAPI添加路由 282
11.6綁定參數 283
11.7過濾請求 285
11.8啟用依賴注入 286
11.9探索API編程 286
11.10跟蹤應用程式 287
11.11WebAPI示例:ProductsController 287
11.12小結 289
第12章套用AngularJS構建單頁面應用程式 290
12.1理解和安裝AngularJS 291
12.1.1AngularJS簡介 291
12.1.2本章目標 291
12.1.3入門 291
12.1.4向網站中添加AngularJS 293
12.1.5資料庫設定 294
12.2創建WebAPI 296
12.3創建應用程式和模組 297
12.3.1創建控制器、模型和視圖 298
12.3.2服務 300
12.3.3路由 303
12.3.4詳細視圖 305
12.3.5自定義電影服務 306
12.3.6刪除電影 308
12.3.7編輯和創建電影 310
12.4小結 315
第13章依賴注入 316
13.1軟體設計模式 316
13.1.1設計模式——控制反轉模式 317
13.1.2設計模式——服務定位器 318
13.1.3設計模式——依賴注入 322
13.2MVC中的依賴解析 325
13.2.1MVC中的單一註冊服務 326
13.2.2MVC中的複合註冊服務 326
13.2.3MVC中的任意對象 328
13.3WebAPI中的依賴解析 330
13.3.1WebAPI中的單一註冊服務 330
13.3.2WebAPI中的複合註冊服務 331
13.3.3WebAPI中的任意對象 332
13.3.4對比MVC和WebAPI中的依賴解析器 332
13.4小結 333
第14章單元測試 334
14.1單元測試和測試驅動開發的意義 334
14.1.1單元測試的定義 335
14.1.2測試驅動開發的定義 336
14.2創建單元測試項目 339
14.2.1檢查默認單元測試 339
14.2.2隻測試自己編寫的代碼 340
14.3單元測試用於ASP.NETMVC和ASP.NETWebAPI應用程式的技巧和竅門 341
14.3.1控制器測試 341
14.3.2路由測試 346
14.3.3驗證測試 349
14.4小結 352
第15章擴展ASP.NETMVC 353
15.1模型擴展 354
15.1.1把請求數據轉換為模型 354
15.1.2用元數據描述模型 359
15.1.3驗證模型 361
15.2視圖擴展 364
15.2.1自定義視圖引擎 364
15.2.2編寫HTML輔助方法 366
15.2.3編寫Razor輔助方法 367
15.3控制器擴展 368
15.3.1操作選擇 368
15.3.2操作過濾器 370
15.3.3提供自定義結果 378
15.4小結 379
第16章高級主題 381
16.1移動支持 381
16.1.1適應性呈現 382
16.1.2顯示模式 386
16.2高級Razor 388
16.2.1模板化的Razor委託 388
16.2.2視圖編譯 389
16.3高級視圖引擎 390
16.3.1視圖引擎配置 391
16.3.2查找視圖 392
16.3.3視圖本身 393
16.3.4備用視圖引擎 393
16.3.5新視圖引擎還是新ActionResult 395
16.4高級基架 395
16.4.1ASP.NET基架簡介 395
16.4.2自定義基架模板 395
16.4.3自定義基架器 398
16.5高級路由 398
16.5.1RouteMagic 398
16.5.2可編輯路由 399
16.6高級模板 402
16.6.1默認模板 403
16.6.2自定義模板 406
16.7高級控制器 408
16.7.1定義控制器:IController接口 408
16.7.2ControllerBase抽象基類 409
16.7.3控制器類和操作 410
16.7.4ActionResult 411
16.7.5操作調用器 418
16.7.6使用異步控制器操作 421
16.8小結 426
第17章ASP.NETMVC實戰:構建NuGet.org網站 427
17.1源碼與我們同在 428
17.2WebActivator 430
17.3ASP.NET動態數據 431
17.4異常日誌 433
17.5性能分析 435
17.6數據訪問 437
17.7EF基於代碼遷移 438
17.8使用OctopusDeploy進行部署 440
17.9使用FluentAutomation自動進行瀏覽器測試 441
17.10其他有用的NuGet包 441
17.10.1WebBackgrounder 442
17.10.2Lucene.NET 443
17.10.3AnglicanGeek.MarkdownMailer 443
17.10.4Ninject 443
17.11小結 444
附錄AASP.NETMVC5.1 445

相關詞條

熱門詞條

聯絡我們