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

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

《ASP.NET MVC 4高級編程(第4版)》是2013年清華大學出版社出版的圖書,作者是Jon Galloway,Phil Haack,Brad Wilson,K. Scott Allen。

基本介紹

  • 書名:ASP.NET MVC 4高級編程(第4版)
  • 作者:Jon Galloway,Phil Haack,Brad Wilson,K. Scott Allen
  • 譯者:遠帥,鄒權
  • ISBN:9787302330035
  • 定價:59
  • 出版社:清華大學出版社
內容介紹,作品目錄,

內容介紹

MVC專家“夢之隊”對ASP.NET MVC 4的全新詮釋
由Microsoft專家和極受敬重的軟體開發社區負責人撰寫的《ASP.NET MVC 4高級編程(第4版)》將帶您學習最前沿的Web框架:ASP.NET MVC 4。本書開篇簡要介紹ASP.NET MVC框架,然後直奔主題,討論使用ASP.NET和最新MicrosoftMVC來構建數據驅動的動態網站需要了解的所有重要知識點。書中提供了按部就班的詳細指導和大量的代碼示例,引導讀者入門並逐漸掌握高級主題。
本書特色:
◆ 解釋ASP.NET MVC框架與“檔案頁”Web框架的不同之處
◆ 介紹控制器、視圖、模型、表單、HTML輔助方法、數據註解、驗證、成員資格、授權、安全和路由
◆ 著重介紹最核心的主題:Ajax、jQuery、NuGet、依賴注入、單元測試、MVC擴展和Razor
◆ 在實際的大型ASP.NET MVC案例網站NuGet Gallery中演示所有知識點
◆ 應上一版讀者提出的要求,本書涵蓋了其他一些緊貼實用的開發知識

作品目錄

第1章 入門 1
1.1 ASP.NET MVC簡介 1
1.1.1 ASP.NET MVC如何適應
ASP.NET 1
1.1.2 MVC模式簡介 2
1.1.3 MVC在Web框架中的套用 2
1.1.4 ASP.NET MVC 4的
發展歷程 3
1.1.5 ASP.NET MVC 4概述 9
1.1.6 ASP.NET Web API 10
1.1.7 增強的默認項目模板 11
1.1.8 使用jQuery Mobile的
移動項目模板 12
1.1.9 顯示模式 13
1.1.10 捆綁和微小框架 13
1.1.11 包含開源庫 14
1.1.12 其他功能 14
1.1.13 開源發布 16
1.2 創建ASP.NET MVC 4
應用程式 16
1.2.1 創建ASP.NET MVC 4
應用程式的軟體要求 16
1.2.2 安裝ASP.NET MVC 4 17
1.2.3 創建ASP.NET MVC 4
應用程式 18
1.2.4 New ASP.NET MVC 4
Project對話框 19
1.3 ASP.NET MVC應用程式的
結構 23
1.4 小結 27
第2章 控制器 29
2.1 控制器的角色 29
2.2 示例應用程式:
MVC Music Store 31
2.3 控制器基礎 33
2.3.1 簡單示例:Home Controller 34
2.3.2 創建第一個控制器 36
2.3.3 控制器操作中的參數 39
2.4 小結 41
第3章 視圖 43
3.1 視圖的作用 44
3.2 指定視圖 45
3.3 強類型視圖 47
3.4 視圖模型 49
3.5 添加視圖 50
3.6 Razor視圖引擎 53
3.6.1 Razor的概念 53
3.6.2 代碼表達式 54
3.6.3 HTML編碼 56
3.6.4 代碼塊 58
3.6.5 Razor語法示例 59
3.6.6 布局 61
3.6.7 ViewStart 64
3.7 指定部分視圖 64
3.8 小結 65
第4章 模型 67
4.1 為MVC Music Store建模 67
4.2 為商店管理器構造基架 70
4.2.1 基架的含義 70
4.2.2 基架和實體框架 72
4.2.3 執行基架模板 74
4.2.4 執行基架代碼 77
4.3 編輯專輯 81
4.3.1 創建編輯專輯的資源 82
4.3.2 回響編輯時的POST請求 84
4.4 模型綁定 86
4.4.1 DefaultModelBinder 87
4.4.2 顯式模型綁定 88
4.5 小結 89
第5章 表單和HTML輔助方法 91
5.1 表單的使用 91
5.1.1 action和method特性 92
5.1.2 GET方法還是POST方法 92
5.2 HTML輔助方法 96
5.2.1 自動編碼 96
5.2.2 輔助方法的使用 97
5.2.3 HTML輔助方法的
工作原理 98
5.2.4 設定專輯編輯表單 98
5.2.5 添加輸入元素 100
5.2.6 輔助方法、模型和
視圖數據 104
5.2.7 強類型輔助方法 106
5.2.8 輔助方法和模型元數據 107
5.2.9 模板輔助方法 107
5.2.10 輔助方法和ModelState 108
5.3 其他輸入輔助方法 109
5.3.1 Html.Hidden 109
5.3.2 Html.Password 109
5.3.3 Html.RadioButton 109
5.3.4 Html.CheckBox 110
5.4 渲染輔助方法 110
5.4.1 Html.ActionLink和
Html.RouteLink 110
5.4.2 URL輔助方法 111
5.4.3 Html.Partial和
Html.RenderPartial 112
5.4.4 Html.Action和
Html.RenderAction 113
5.5 小結 115
第6章 數據註解和驗證 117
6.1 為驗證註解訂單 118
6.1.1 驗證註解的使用 119
6.1.2 自定義錯誤提示訊息及其
本地化 123
6.1.3 註解的後台原理 124
6.1.4 控制器操作和驗證錯誤 125
6.2 自定義驗證邏輯 127
6.2.1 自定義註解 127
6.2.2 IValidatableObject 130
6.3 顯示和編輯註解 131
6.3.1 Display 131
6.3.2 ScaffoldColumn 132
6.3.3 DisplayFormat 132
6.3.4 ReadOnly 133
6.3.5 DataType 133
6.3.6 UIHint 134
6.3.7 HiddenInput 134
6.4 小結 134
第7章 成員資格、授權和安全性 135
7.1 使用Authorize特性登錄 137
7.1.1 保護控制器操作 137
7.1.2 Authorize特性在表單身份
驗證和AccountController
控制器中的用法 141
7.1.3 Intranet Application模板中
的Windows Authentication 142
7.1.4 整個控制器的安全性 143
7.1.5 使用全局授權過濾器保障
整個應用程式安全 144
7.2 要求角色成員使用Authorize
特性 145
7.3 擴展角色和成員 146
7.4 通過OAuth和OpenID的
外部登錄 146
7.4.1 註冊外部登錄提供器 148
7.4.2 配置OpenID提供器 148
7.4.3 配置OAuth提供器 151
7.4.4 外部登錄的安全性 152
7.5 Web應用程式中的安全向量 153
7.5.1 威脅:跨站腳本 153
7.5.2 威脅:跨站請求偽造 163
7.5.3 威脅:cookie盜竊 167
7.5.4 威脅:重複提交 169
7.5.5 威脅:開放重定向 171
7.6 適當的錯誤報告和堆疊跟蹤 179
7.6.1 使用配置轉換 180
7.6.2 在生產環境中使用Retail
部署配置 181
7.6.3 使用專門的錯誤日誌系統 181
7.7 安全回顧和有用資源 182
7.8 小結 182
第8章 Ajax 185
8.1 jQuery 185
8.1.1 jQuery的特性 186
8.1.2 非侵入式JavaScript 189
8.1.3 jQuery的用法 190
8.2 Ajax輔助方法 193
8.2.1 Ajax的ActionLink方法 193
8.2.2 HTML 5特性 195
8.2.3 Ajax表單 196
8.3 客戶端驗證 198
8.3.1 jQuery驗證 198
8.3.2 自定義驗證 200
8.4 輔助方法之外 204
8.4.1 jQuery UI 204
8.4.2 使用jQuery UI實現自動
完成部件 205
8.4.3 JSON和客戶端模板 208
8.5 提高Ajax性能 213
8.5.1 使用內容分發網路 213
8.5.2 腳本最佳化 214
8.5.3 捆綁和微小 214
8.6 小結 215
第9章 路由 217
9.1 統一資源定位符——URL 218
9.2 路由概述 219
9.2.1 對比路由和URL重寫 219
9.2.2 路由的定義 220
9.2.3 路由命名 227
9.2.4 MVC區域 229
9.2.5 Catch-All參數 230
9.2.6 段中的多個URL參數 231
9.2.7 StopRoutingHandler和
IgnoreRoute 232
9.2.8 路由的調試 233
9.3 揭秘路由如何生成URL 234
9.3.1 URL生成的高層次概述 235
9.3.2 URL生成詳解 235
9.3.3 外界路由值 237
9.3.4 Route類生成URL的若干
示例 239
9.4 揭秘路由如何綁定到操作 240
9.4.1 高層次請求的路由管道 240
9.4.2 路由數據 241
9.5 自定義路由約束 241
9.6 Web Forms和路由機制 242
9.7 小結 243
第10章 NuGet 245
10.1 NuGet概述 245
10.2 NuGet安裝 246
10.3 以包的形式添加庫 248
10.3.1 查找包 249
10.3.2 安裝包 250
10.3.3 更新包 253
10.3.4 最近包 254
10.3.5 包恢復 254
10.3.6 包管理器控制台的用法 255
10.4 創建包 258
10.4.1 打包項目 258
10.4.2 打包資料夾 259
10.4.3 NuSpec檔案 259
10.4.4 元數據 260
10.4.5 依賴庫 261
10.4.6 指定要包含的檔案 262
10.4.7 工具 263
10.4.8 框架和輪廓定位 266
10.4.9 預發布包 267
10.5 發布包 267
10.5.1 發布到NuGet.org 267
10.5.2 使用NuGet.exe 269
10.5.3 包瀏覽器的用法 271
10.6 小結 272
第11章 ASP.NET Web API 273
11.1 定義ASP.NET Web API 274
11.2 Web API入門 274
11.3 編寫API控制器 275
11.3.1 檢查示例
ValuesController 275
11.3.2 異步設計:
IHttpController 277
11.3.3 傳入的操作參數 278
11.3.4 操作返回值、錯誤和
異步 278
11.4 配置Web API 279
11.4.1 Web託管Web API的
配置 279
11.4.2 自託管Web API的
配置 280
11.4.3 第三方託管配置 281
11.5 向Web API添加路由 281
11.6 綁定參數 282
11.7 過濾請求 284
11.8 啟用依賴注入 285
11.9 探索API編程 286
11.10 跟蹤應用程式 287
11.11 Web API示例:
ProductsController 287
11.12 小結 290
第12章 依賴注入 291
12.1 軟體設計模式 291
12.1.1 設計模式——
控制反轉模式 292
12.1.2 設計模式——
服務定位器 294
12.1.3 設計模式—— 依賴注入 298
12.2 MVC中的依賴解析 300
12.2.1 單一註冊服務 302
12.2.2 複合註冊服務 302
12.2.3 MVC中的任意對象 304
12.3 Web API中的依賴解析 306
12.3.1 Web API的單一註冊
服務 307
12.3.2 Web API中的複合註冊
服務 308
12.3.3 Web API中的任意對象 308
12.3.4 對比MVC和Web API
中的依賴解析器 309
12.4 小結 309
第13章 單元測試 311
13.1 單元測試和測試驅動開發
的意義 311
13.1.1 單元測試的定義 312
13.1.2 測試驅動開發的定義 313
13.2 創建單元測試項目 316
13.2.1 檢查默認單元測試 317
13.2.2 只測試自己編寫的代碼 320
13.3 單元測試用於ASP.NET MVC
應用程式的技巧和竅門 321
13.3.1 控制器測試 321
13.3.2 路由測試 326
13.3.3 驗證測試 328
13.4 小結 332
第14章 擴展ASP.NET MVC 333
14.1 模型擴展 334
14.1.1 把請求數據轉化為模型 334
14.1.2 用元數據描述模型 339
14.1.3 驗證模型 342
14.2 視圖擴展 345
14.2.1 自定義視圖引擎 345
14.2.2 編寫HTML輔助方法 348
14.2.3 編寫Razor輔助方法 349
14.3 控制器擴展 349
14.3.1 操作選擇 349
14.3.2 操作過濾器 351
14.3.3 提供自定義結果 353
14.4 小結 354
第15章 高級主題 355
15.1 移動支持 355
15.1.1 適應性呈現 356
15.1.2 顯示模式 360
15.1.3 Mobile Project模板 361
15.2 高級Razor 363
15.2.1 模板化的Razor委託 363
15.2.2 視圖編譯 364
15.3 高級視圖引擎 365
15.3.1 視圖引擎配置 366
15.3.2 查找視圖 367
15.3.3 視圖本身 368
15.3.4 備用視圖引擎 369
15.3.5 新視圖引擎還是新
ActionResult 370
15.4 高級基架 371
15.4.1 自定義T4代碼模板 371
15.4.2 NuGet包
MvcScaffolding 372
15.4.3 更新的Add Controller
對話框選項 373
15.4.4 使用庫模板 373
15.4.5 添加基架器 375
15.4.6 額外資源 375
15.5 高級路由 375
15.5.1 RouteMagic 376
15.5.2 可編輯路由 376
15.6 高級模板 380
15.6.1 默認模板 380
15.6.2 自定義模板 385
15.7 高級控制器 386
15.7.1 定義控制器:IController
接口 386
15.7.2 ControllerBase抽象基類 387
15.7.3 控制器類和操作 388
15.7.4 ActionResult 390
15.7.5 操作調用器 398
15.7.6 使用異步控制器操作 401
15.8 小結 408
第16章 ASP.NET MVC實戰:
構建NuGet.org網站 409
16.1 源碼與我們同在 410
16.2 WebActivator 411
16.3 ASP.NET動態數據 413
16.4 異常日誌 416
16.5 性能分析 417
16.6 數據訪問 420
16.7 EF基於代碼遷移 421
16.8 成員資格 423
16.9 其他有用的NuGet包 424
16.9.1 T4MVC 424
16.9.2 WebBackgrounder 425
16.9.3 Lucene.NET 426
16.9.4 AnglicanGeek.Markdown-
Mailer 426
16.9.5 Ninject 426
16.10 小結 427

相關詞條

熱門詞條

聯絡我們