3dwoo大學簡體電腦書店
精通ASP.NET MVC 3框架(第三版)
( 簡體 字)
作者:[美] Adam Freeman Steven Standerson 類別:1. -> 程式設計 -> .NET -> ASP.NET
出版社:人民郵電出版社精通ASP.NET MVC 3框架(第三版) 3dWoo書號: 35352
詢問書籍請說出此書號!
有庫存
NT售價: 495
出版日:5/1/2013
頁數:632
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 字 )
ISBN:9787115302120 加入購物車加到我的最愛 (請先登入會員)
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社)
第1部分 ASP.NET MVC 3簡介

第1章 設計思路 2
1.1 Web開發簡史 2
1.1.1 傳統的ASP.NET Web Form 3
1.1.2 ASP.NET Web Form表單的問題在哪里 3
1.2 當今的Web開發 4
1.2.1 Web標準與REST 4
1.2.2 敏捷與測試驅動開發 5
1.2.3 Ruby on Rails 5
1.2.4 Sinatra 6
1.2.5 Node.js 6
1.3 ASP.NET MVC的主要優勢 7
1.3.1 MVC架構 7
1.3.2 可擴展性 7
1.3.3 在HTML及HTTP上的嚴密控制 8
1.3.4 可測試性 8
1.3.5 強大的路由系統 9
1.3.6 建立在ASP.NET平臺的精華之上 9
1.3.7 現代API 10
1.3.8 ASP.NET MVC是開源的 10
1.4 誰該使用ASP.NET MVC 10
1.4.1 與ASP.NET Web Form的比較 11
1.4.2 從Web Form遷移到MVC 11
1.4.3 與Ruby on Rails的比較 11
1.4.4 與MonoRail的比較 12
1.5 ASP.NET MVC 3的新特性 12
1.6 小結 12

第2章 準備工作 13
2.1 準備工作站 13
2.1.1 安裝Visual Studio 2010 13
2.1.2 安裝基本軟件 14
2.1.3 安裝可選組件 15
2.1.4 MVC框架源代碼 16
2.1.5 IIS Express 16
2.1.6 SQL Server 2008 R2 Management Studio Express 16
2.2 準備服務器 16
2.2.1 啟用Web服務器角色 17
2.2.2 安裝其他組件 18
2.2.3 設置Web部署 19
2.2.4 獲取更多信息 21
2.3 小結 21

第3章 第一個MVC應用程序 22
3.1 創建ASP.NET MVC新項目 22
3.1.1 添加第一個控制器 24
3.1.2 理解路由 25
3.2 渲染Web頁面 26
3.2.1 創建并渲染一個視圖 26
3.2.2 添加動態輸出 28
3.3 創建一個簡單的數據錄入應用程序 29
3.3.1 設置場景 30
3.3.2 設計一個數據模型 31
3.3.3 添加模型類 31
3.3.4 鏈接動作方法 31
3.3.5 創建動作方法 32
3.3.6 添加一個強類型視圖 33
3.3.7 建立表單 34
3.3.8 處理表單 36
3.3.9 使用模型綁定 37
3.3.10 渲染其他視圖 38
3.3.11 添加驗證 39
3.3.12 高亮無效字段 41
3.3.13 完成示例 42
3.4 小結 43

第4章 MVC模式 44
4.1 MVC簡史 44
4.2 理解MVC模式 44
4.2.1 理解域模型 45
4.2.2 MVC的ASP.NET實現 46
4.2.3 MVC與其他模式比較 46
4.2.4 理解“智能UI”模式 46
4.2.5 理解MVC的變異 48
4.3 運用域驅動開發(DDD) 49
4.3.1 模擬一個例子域 50
4.3.2 通用語言 50
4.3.3 聚合與簡化 51
4.3.4 定義存儲庫 53
4.4 建立松耦合組件 53
4.4.1 使用依賴性注入 54
4.4.2 一個MVC專用的依賴性注入示例 56
4.4.3 使用依賴性注入容器 57
4.5 自動測試初步 57
4.5.1 理解單元測試 58
4.5.2 使用測試驅動開發及“紅—綠—重構”工作流 60
4.5.3 理解集成測試 65
4.6 小結 66

第5章 基本語言特性 67
5.1 C#基本特性 67
5.1.1 使用自動實現的屬性 67
5.1.2 使用對象與集合初始化器 70
5.1.3 使用擴展方法 71
5.1.4 對接口運用擴展方法 73
5.1.5 創建過濾擴展方法 75
5.1.6 使用lambda表達式 76
5.1.7 使用自動類型接口 78
5.1.8 使用匿名類型 78
5.1.9 執行語言集成查詢 79
5.1.10 理解延遲LINQ查詢 83
5.1.11 反復使用延遲查詢 84
5.2 理解Razor語法 86
5.2.1 創建項目 86
5.2.2 考察基本的Razor視圖 88
5.3 小結 95

第6章 MVC基本工具 96
6.1 使用Ninject 96
6.1.1 創建項目 98
6.1.2 Ninject入門 99
6.1.3 創建依賴性鏈 100
6.1.4 指定屬性與參數值 102
6.1.5 使用自身綁定 103
6.1.6 綁定到派生類型 104
6.1.7 使用條件綁定 105
6.2 將Ninject運用于APS.NET MVC 106
6.3 Visual Studio的單元測試 108
6.3.1 創建項目 108
6.3.2 創建單元測試 110
6.3.3 運行單元測試(并失敗) 114
6.3.4 實現特性 114
6.4 使用Moq 115
6.4.1 將Moq添加到Visual Studio項目 116
6.4.2 用Moq創建模仿 116
6.4.3 使用Moq的單元測試 118
6.4.4 用Moq作校驗 120
6.5 小結 120

第7章 SportsStore:一個真實的應用程序 121
7.1 開始 122
7.1.1 創建Visual Studio解決方案和項目 122
7.1.2 添加引用 123
7.1.3 建立DI容器 124
7.1.4 運行應用程序 125
7.2 從域模型開始 126
7.2.1 創建抽象存儲庫 127
7.2.2 制作模仿存儲庫 127
7.3 顯示產品列表 128
7.3.1 添加控制器 128
7.3.2 添加視圖 129
7.3.3 設置默認路由 130
7.3.4 運行應用程序 131
7.4 準備數據庫 131
7.4.1 創建數據庫 132
7.4.2 定義數據庫方案 132
7.4.3 向數據庫添加數據 133
7.4.4 創建實體框架上下文 134
7.4.5 創建Product存儲庫 135
7.5 添加分頁 136
7.5.1 顯示頁面鏈接 138
7.5.2 改進URL 145
7.6 設置內容樣式 146
7.6.1 定義布局中的公用內容 146
7.6.2 添加CSS規則 147
7.6.3 創建分部視圖 148
7.7 小結 150

第8章 SportsStore:導航與購物車 151
8.1 添加導航控件 151
8.1.1 過濾產品列表 151
8.1.2 調整URL方案 154
8.1.3 建立分類導航菜單 156
8.1.4 修正頁面計數 163
8.2 建立購物車 165
8.2.1 定義購物車實體 165
8.2.2 添加“Add to Cart(加入購物車)”按鈕 169
8.2.3 實現購物車控制器 170
8.2.4 顯示購物車內容 172
8.3 使用模型綁定 174
8.4 完成購物車 179
8.4.1 刪除購物車的條目 179
8.4.2 添加購物車摘要 180
8.5 遞交訂單 182
8.5.1 擴充域模型 182
8.5.2 添加結算過程 183
8.5.3 實現訂單處理器 186
8.5.4 注冊接口實現 189
8.5.5 完成購物車控制器 189
8.5.6 顯示驗證錯誤 193
8.5.7 顯示致謝頁面 193
8.6 小結 195

第9章 SportsStore:管理 196
9.1 添加分類管理 196
9.1.1 創建CRUD控制器 196
9.1.2 渲染存儲庫中的產品 198
9.1.3 創建新的布局 199
9.1.4 實現List視圖 201
9.1.5 編輯產品 204
9.1.6 創建新產品 216
9.1.7 刪除產品 217
9.2 使管理特性安全 220
9.2.1 建立表單認證 220
9.2.2 運用過濾器進行授權 221
9.2.3 創建認證提供器 222
9.2.4 創建Account控制器 223
9.2.5 創建視圖 225
9.3 圖像上傳 228
9.3.1 擴展數據庫 228
9.3.2 增強域模型 229
9.3.3 創建Upload用戶界面元素 230
9.3.4 將圖像保存到數據庫 231
9.3.5 實現GetImage動作方法 232
9.3.6 顯示產品圖像 234
9.4 小結 235

第2部分 ASP.NET MVC 3細節

第10章 MVC項目綜述 238
10.1 使用Visual Studio的MVC項目 238
10.1.1 使用Internet和Intranet應用程序控制器 241
10.1.2 理解MVC約定 241
10.2 調試MVC應用程序 243
10.2.1 創建項目 243
10.2.2 運行Visual Studio調試器 244
10.2.3 引發Visual Studio調試器中斷 245
10.2.4 使用編輯并繼續 248
10.3 項目范圍的依賴性注入 251
10.4 小結 253

第11章 URL、路由與區域 254
11.1 路由系統介紹 254
11.1.1 創建路由項目 255
11.1.2 URL模式介紹 256
11.1.3 創建并注冊一條簡單路由 258
11.1.4 定義默認值 262
11.1.5 使用靜態URL片段 263
11.1.6 定義自定義片段變量 266
11.1.7 定義可選URL片段 268
11.1.8 定義可變長路由 269
11.1.9 按命名空間區分控制器優先順序 271
11.1.10 約束路由 273
11.1.11 對磁盤文件的請求進行路由 277
11.1.12 繞過路由系統 279
11.2 生成輸出URL 280
11.2.1 準備項目 281
11.2.2 在視圖中生成輸出URL 281
11.2.3 在動作方法中生成輸出URL 287
11.2.4 根據特定路由生成URL 288
11.3 定制路由系統 289
11.3.1 創建一個自定義的RouteBase實現 289
11.3.2 創建自定義路由處理程序 293
11.4 使用區域 294
11.4.1 創建區域 294
11.4.2 填充區域 296
11.4.3 解析不明確的控制器問題 297
11.4.4 生成對區域動作的鏈接 298
11.5 URL方案最佳實踐 299
11.5.1 使URL整潔和人性化 299
11.5.2 GET和POST:選用正確的一個 300
11.6 小結 301

第12章 控制器與動作 302
12.1 控制器介紹 302
12.1.1 準備項目 302
12.1.2 用IController創建控制器 302
12.1.3 創建派生于Controller類的控制器 303
12.2 接收輸入 305
12.2.1 通過上下文對象獲取數據 305
12.2.2 使用動作方法參數 306
12.3 產生輸出 308
12.3.1 理解動作結果 310
12.3.2 通過渲染視圖返回HTML 313
12.3.3 把數據從動作方法傳遞給視圖 317
12.3.4 執行重定向 321
12.3.5 返回文本數據 325
12.3.6 返回XML數據 327
12.3.7 返回JSON數據 328
12.3.8 返回文件及二進制數據 328
12.3.9 返回錯誤及HTTP代碼 331
12.3.10 創建自定義動作結果 332
12.4 小結 335

第13章 過濾器 336
13.1 使用過濾器 336
13.1.1 過濾器的四種基本類型 338
13.1.2 將過濾器應用于控制器和動作方法 338
13.1.3 使用授權過濾器 339
13.1.4 使用異常過濾器 345
13.1.5 使用動作和結果過濾器 348
13.1.6 使用其他過濾器特性 353
13.1.7 使用內建過濾器 358
13.2 小結 361

第14章 控制器可擴展性 362
14.1 請求處理管道組件 362
14.2 創建控制器工廠 362
14.2.1 定義自定義控制器工廠 363
14.2.2 注冊自定義控制器工廠 365
14.3 使用內建的控制器工廠 365
14.3.1 命名空間優先排序 366
14.3.2 定制DefaultControllerFactory的控制器創建 366
14.4 創建自定義動作調用器 368
14.5 使用內建的動作調用器 370
14.5.1 使用自定義動作名 371
14.5.2 動作方法選擇 372
14.5.3 用動作方法選擇器支持REST服務 375
14.6 用特殊控制器改善性能 377
14.6.1 使用無會話控制器 378
14.6.2 使用異步控制器 380
14.7 小結 388

第15章 視圖 389
15.1 創建自定義視圖引擎 389
15.1.1 創建自定義IView 391
15.1.2 創建IViewEngine實現 392
15.1.3 注冊自定義視圖引擎 393
15.2 使用Razor引擎 395
15.2.1 理解Razor視圖渲染 395
15.2.2 對Razor視圖添加依賴性注入 397
15.2.3 配置視圖搜索位置 398
15.3 對Razor視圖添加動態內容 400
15.4 使用HTML輔助器 405
15.4.1 創建內聯的HTML輔助器 406
15.4.2 創建外部輔助器方法 407
15.4.3 使用內建的HTML輔助器 408
15.5 使用分段 421
15.5.1 對分段進行檢測 423
15.5.2 渲染可選分段 424
15.6 使用分部視圖 424
15.6.1 創建分部視圖 424
15.6.2 使用強類型分部視圖 425
15.7 使用子動作 427
15.7.1 創建子動作 427
15.7.2 渲染子動作 428
15.8 小結 428

第16章 模型模板 429
16.1 使用模板視圖輔助器 429
16.1.1 設置生成HTML的樣式 433
16.1.2 使用模型元數據 434
16.1.3 使用復合類型參數 441
16.2 定制模板視圖輔助器系統 442
16.2.1 創建自定義編輯模板 442
16.2.2 創建自定義顯示模板 445
16.2.3 創建泛型模板 446
16.2.4 替換內建模板 446
16.2.5 使用ViewData.TemplateInfo屬性 447
16.2.6 把額外元數據傳遞給模板 449
16.3 理解元數據提供器系統 450
16.3.1 創建自定義模型元數據提供器 451
16.3.2 定制數據注解模型元數據提供器 453
16.4 小結 454

第17章 模型綁定 455
17.1 理解模型綁定 455
17.2 使用默認模型綁定器 457
17.2.1 綁定簡單類型 458
17.2.2 綁定復合類型 459
17.2.3 綁定到數組與集合 462
17.3 手工調用模型綁定 465
17.3.1 限制綁定到特定數據源 466
17.3.2 處理綁定錯誤 467
17.4 使用模型綁定接收文件上傳 468
17.5 自定義模型綁定系統 469
17.5.1 創建自定義的值提供器 469
17.5.2 創建依賴性感知的模型綁定器 471
17.5.3 創建自定義模型綁定器 472
17.5.4 創建模型綁定器提供器 474
17.5.5 使用ModelBinder注解屬性 475
17.6 小結 476

第18章 模型驗證 477
18.1 創建項目 477
18.2 明確地驗證模型 479
18.3 顯示驗證消息 481
18.4 使用其他驗證技術 485
18.4.1 模型綁定器中執行驗證 485
18.4.2 用元數據指定驗證規則 488
18.4.3 定義自驗證模型 492
18.4.4 創建自定義驗證提供器 493
18.5 執行客戶端驗證 496
18.5.1 啟用和禁用客戶端驗證 497
18.5.2 使用客戶端驗證 500
18.5.3 理解客戶端驗證機制 502
18.5.4 自定義客戶端驗證 503
18.6 執行遠程驗證 509
18.7 小結 511

第19章 非唐突Ajax 512
19.1 使用MVC的非唐突Ajax 512
19.1.1 創建項目 512
19.1.2 啟用和禁用非唐突Ajax 515
19.1.3 使用非唐突Ajax表單 516
19.1.4 理解非唐突Ajax如何工作 517
19.2 設置Ajax選項 518
19.2.1 確保優雅降級 518
19.2.2 在Ajax請求期間給用戶提供反饋 520
19.2.3 請求之前對用戶進行提示 521
19.3 創建Ajax鏈接 522
19.4 使用Ajax回調 524
19.5 使用JSON 527
19.5.1 對控制器添加JSON支持 528
19.5.2 在瀏覽器中處理JSON 529
19.5.3 在動作方法中檢測Ajax請求 530
19.5.4 接收JSON數據 531
19.6 小結 533

第20章 jQuery 534
20.1 創建項目 534
20.2 引用jQuery 536
20.3 編寫jQuery代碼 538
20.4 jQuery基本理論 541
20.4.1 理解jQuery選擇器 542
20.4.2 使用jQuery過濾器 544
20.4.3 理解jQuery方法 547
20.4.4 等待DOM 547
20.4.5 使用jQuery的CSS方法 548
20.4.6 使用DOM 551
20.5 使用jQuery事件 554
20.6 使用jQuery視覺效果 555
20.7 使用jQuery UI 556
20.7.1 引用jQuery UI 557
20.7.2 制作更好的按鈕 557
20.7.3 使用Silder滑塊 559
20.8 小結 561

第3部分 交付已完成的ASP.NET MVC 3項目

第21章 安全性與脆弱性 564
21.1 所有輸入都可以偽造 564
偽造HTTP請求 566
21.2 跨網站腳本與HTML注入 567
21.2.1 理解XSS漏洞 568
21.2.2 Razor的HTML編碼 569
21.2.3 請求驗證 570
21.2.4 JavaScript字符串編碼與XSS 572
21.3 會話劫持 574
21.3.1 通過客戶端IP地址檢查進行防護 575
21.3.2 通過在cookie中設置HttpOnly標志進行防護 575
21.4 跨網站請求偽造 576
21.4.1 攻擊 577
21.4.2 防護 577
21.4.3 用Antiforgery輔助器阻止CSRF 578
21.5 SQL注入 579
21.5.1 攻擊 580
21.5.2 用參數化查詢進行防護 580
21.5.3 用對象關系映射進行防護 581
21.6 安全使用MVC框架 581
21.6.1 不要意外暴露動作方法 581
21.6.2 不要允許模型綁定修改敏感屬性 582
21.7 小結 582

第22章 認證與授權 583
22.1 使用Windows認證 583
22.2 使用表單認證 585
22.2.1 建立表單認證 586
22.2.2 使用cookieless表單認證 588
22.3 使用成員、角色和簡檔 589
22.3.1 建立并使用成員 590
22.3.2 建立并使用角色 598
22.3.3 建立并使用簡檔 601
22.4 為什么不應該使用基于URL的授權 606
22.5 小結 608

第23章 部署 609
23.1 準備要部署的應用程序 609
23.1.1 部署前檢測視圖錯誤 609
23.1.2 配置動態頁面編譯 610
23.1.3 為bin部署做準備 611
23.1.4 準備用于轉換的Web.config文件 612
23.2 理解轉換結構 613
23.2.1 插入配置元素 615
23.2.2 刪除配置元素 617
23.2.3 設置和刪除屬性 618
23.2.4 替換元素 619
23.2.5 使用Locator屬性 620
23.2.6 準備數據庫部署準備項目 622
23.3 理解IIS基本原理 624
23.3.1 理解Web網站 624
23.3.2 理解虛擬目錄 625
23.3.3 理解應用程序池 625
23.3.4 將Web網站綁定到主機名、IP地址及端口 625
23.4 為部署準備服務器 626
23.5 部署應用程序 627
23.5.1 通過復制文件部署應用程序 627
23.5.2 使用部署包 629
23.5.3 使用一鍵發布 631
23.6 小結 632
《精通ASP.NET MVC 3框架(第三版)》系統地介紹了ASP.NET MVC方方面面的技術。全書語言流暢,說理透徹且示例翔實,并為軟件開發人員探究ASP.NET MVC奧秘提供了無盡的線索,是系統學習ASP.NET MVC開發技術的一本不可多得的好書。
  《精通ASP.NET MVC 3框架(第三版)》分為3部分共23章,第一部分(第1~9章)系統介紹了ASP.NET MVC的背景知識、基本思想和基本概念,并以一個實用的應用程序為例,詳細介紹了MVC各個部分的基本實現方法和思想。第二部分(第10~20章)對MVC相關的主要技術分別作了詳細的描述。第三部分(第21~23章)介紹了與MVC相關的一些外圍技術,包括系統安全性、認證與授權,以及應用程序部署等。
  《精通ASP.NET MVC 3框架(第三版)》適合希望采用ASP.NET MVC技術從事Web應用程序開發的人員閱讀,或作為大專院校教授ASP.NET MVC開發技術的教材,也可供從事軟件設計與開發的相關技術人員參考。
pagetop