出版時間:2011-6 出版社:人民郵電 作者:(美)麥克唐納//弗里曼//茲普茲塔|譯者:博思工作室 頁數(shù):1146 譯者:博思工作室
Tag標(biāo)簽:無
內(nèi)容概要
《ASP.NET
4高級程序設(shè)計(第4版)》是ASP.NET領(lǐng)域的鴻篇巨制,全面講解了ASP.NET4的各種特性及其背后的工作原理,并給出了許多針對如何構(gòu)建復(fù)雜、可擴展的網(wǎng)站從實踐中得出的建議。書中還深入講述了其他ASP.NET圖書遺漏的高級主題,如自定義控件的創(chuàng)建、圖像處理、加密等。此外,《ASP.NET
4高級程序設(shè)計(第4版)》專門提供了兩章的內(nèi)容來教你如何用Ajax
技術(shù)制作快速響應(yīng)的頁面,以及如何使用微軟的ASP.NETAJAX平臺。另外,還專門介紹了ASP.NET4 新增的功能,如MVC
和動態(tài)數(shù)據(jù)等。
《ASP.NET 4高級程序設(shè)計(第4版)》適合各層次的ASP.NET程序員閱讀。
作者簡介
Matthew MacDonald 世界頂尖的微軟技術(shù)專家,微軟MVP。他是Inside Visual Basic、ASP
Today、Hardcore Visual Studio
.NET等著名軟件開發(fā)雜志的特約作者,還寫作了多部膾炙人口的編程暢銷書,本書為其代表作。
Adam Freeman
現(xiàn)任某跨國銀行CTO和COO,經(jīng)驗豐富的IT專家。他在很多公司擔(dān)任過高級職務(wù),著有多部Java和.NET方面的圖書。
Mario
Szpuszta微軟奧地利開發(fā)者和平臺組架構(gòu)師,有豐富的Web應(yīng)用和安全軟件開發(fā)和集成經(jīng)驗。他也是社區(qū)內(nèi)非?;钴S的技術(shù)專家,經(jīng)常在各種頂級技術(shù)會議中發(fā)表演講。除本書外,他還是名著Advanced
.NET Remoting的作者
書籍目錄
第一部分 核心概念
第1章 ASP.NET簡介 2
1.1 ASP.NET的7大要點 2
1.1.1 要點1:ASP.NET是同.NETFramework集成在一起的 2
1.1.2 要點2:ASP.NET是編譯執(zhí)行的,而不是解釋執(zhí)行的 3
1.1.3 要點3:ASP.NET支持多語言 4
1.1.4 要點4:ASP.NET運行在公共語言運行庫內(nèi) 6
1.1.5 要點5:ASP.NET是面向?qū)ο蟮摹?
1.1.6 要點6:ASP.NET支持所有的瀏覽器 8
1.1.7 要點7:ASP.NET易于部署和配置 8
1.2 ASP.NET的演變 9
1.2.1 ASP.NET1.0和ASP.NET1.1 9
1.2.2 ASP.NET2.0 9
1.2.3 ASP.NET3.5 10
1.2.4 ASP.NET4 12
1.2.5 Silverlight 14
1.3 總結(jié) 15
第2章 Visual Studio 16
2.1 Visual Studio 16
2.1.1 網(wǎng)站和Web項目 17
2.1.2 創(chuàng)建無項目文件的網(wǎng)站 18
2.1.3 設(shè)計網(wǎng)頁 21
2.2 Visual StudioIDE 26
2.2.1 解決方案資源管理器 28
2.2.2 文檔窗口 29
2.2.3 工具箱 29
2.2.4 錯誤列表和任務(wù)列表 30
2.2.5 服務(wù)器資源管理器 31
2.3 代碼編輯器 32
2.3.1 添加程序集引用 33
2.3.2 智能感知和大綱顯示 35
2.3.3 Visual Studio 2010改進 37
2.4 編碼模型 42
2.4.1 代碼隱藏文件如何與頁面連接 44
2.4.2 控件標(biāo)簽如何與頁面變量連接 44
2.4.3 事件如何與事件處理程序連接 46
2.5 Web項目 47
2.5.1 基于項目的開發(fā) 47
2.5.2 創(chuàng)建Web項目 48
2.5.3 遷移舊版Visual Studio創(chuàng)建的網(wǎng)站 49
2.6 Visual Studio調(diào)試 51
2.6.1 單步調(diào)試 52
2.6.2 變量監(jiān)視 54
2.6.3 高級斷點 55
2.7 WebDevelopment Helper 56
2.8 總結(jié) 57
第3章 Web窗體 58
3.1 頁面處理 58
3.1.1 HTML表單 59
3.1.2 動態(tài)用戶界面 60
3.1.3 ASP.NET事件模型 61
3.1.4 自動回送 62
3.1.5 視圖狀態(tài) 63
3.1.6 XHTML兼容性 66
3.1.7 客戶端控件ID 71
3.2 Web窗體處理階段 73
3.2.1 頁面框架初始化 74
3.2.2 用戶代碼初始化 74
3.2.3 驗證 74
3.2.4 事件處理 75
3.2.5 自動數(shù)據(jù)綁定 75
3.2.6 清除 76
3.2.7 頁面流示例 76
3.3 作為控件容器的頁面 78
3.3.1 顯示控件樹 78
3.3.2 頁頭 82
3.3.3 動態(tài)控件的創(chuàng)建 82
3.4 Page類 84
3.4.1 Session、Application和Cache 84
3.4.2 Request 85
3.4.3 Response 86
3.4.4 Server 88
3.4.5 User 90
3.4.6 Trace 91
3.4.7 訪問其他類中的HTTP上下文 96
3.5 總結(jié) 96
第4章 服務(wù)器控件 97
4.1 服務(wù)器控件的類型 97
4.2 HTML服務(wù)器控件 99
4.2.1 HtmlControl類 100
4.2.2 HtmlContainerControl類 100
4.2.3 HtmlInputControl類 100
4.2.4 HTML服務(wù)器控件類 101
4.2.5 設(shè)置Style特性和其他屬性 102
4.2.6 通過編程創(chuàng)建服務(wù)器控件 103
4.2.7 處理服務(wù)器端事件 104
4.3 Web控件 107
4.3.1 WebControl基類 107
4.3.2 基本的Web控件類 108
4.3.3 單位 109
4.3.4 枚舉 110
4.3.5 顏色 110
4.3.6 字體 111
4.3.7 焦點 12
4.3.8 默認(rèn)按鈕 113
4.3.9 可滾動面板 114
4.3.10 處理Web控件事件 114
4.4 List控件 116
4.4.1 Selectable列表控件 117
4.4.2 BulletedList控件 120
4.5 輸入驗證控件 121
4.5.1 驗證控件 121
4.5.2 驗證流程 122
4.5.3 BaseValidator類 122
4.5.4 RequiredFieldValidator控件 124
4.5.5 RangeValidator控件 124
4.5.6 CompareValidator控件 125
4.5.7 RegularExpressionValidator控件 125
4.5.8 CustomValidator控件 127
4.5.9 ValidationSummary控件 128
4.5.10 通過編程使用驗證器 129
4.5.11 驗證組 130
4.6 富控件 132
4.6.1 AdRotator控件 132
4.6.2 Calendar控件 134
4.7 總結(jié) 136
第5章 ASP.NET應(yīng)用程序 137
5.1 剖析ASP.NET應(yīng)用程序 137
5.1.1 應(yīng)用程序域 137
5.1.2 應(yīng)用程序生命周期 138
5.1.3 應(yīng)用程序更新 139
5.1.4 應(yīng)用程序目錄結(jié)構(gòu) 139
5.2 global.asax應(yīng)用程序文件 140
5.2.1 應(yīng)用程序事件 141
5.2.2 演示應(yīng)用程序事件 143
5.3 ASP.NET配置 144
5.3.1 machine.config文件 144
5.3.2 web.config文件 147
5.3.3 <system.web>設(shè)置 150
5.3.4 <system.webServer> 150
5.3.5 <appSettings> 150
5.3.6 <connectionStrings> 152
5.3.7 通過編程讀寫配置節(jié) 152
5.3.8 網(wǎng)站管理工具(WAT) 155
5.3.9 擴展配置文件結(jié)構(gòu) 156
5.3.10 加密配置節(jié) 159
5.4 .NET組件 161
5.4.1 創(chuàng)建組件 161
5.4.2 通過App_Code目錄使用組件 162
5.4.3 通過Bin目錄使用組件 163
5.5 擴展HTTP管道 165
5.5.1 HTTP處理程序 165
5.5.2 創(chuàng)建自定義的HTTP處理程序 167
5.5.3 配置自定義的HTTP處理程序 168
5.5.4 使用無須配置的HTTP處理程序 169
5.5.5 創(chuàng)建高級的HTTP處理程序 169
5.5.6 為非HTML內(nèi)容創(chuàng)建HTTP處理程序 171
5.5.7 HTTP模塊 173
5.5.8 創(chuàng)建自定義HTTP模塊 174
5.6 總結(jié) 176
第6章 狀態(tài)管理 177
6.1 ASP.NET狀態(tài)管理 177
6.2 視圖狀態(tài) 179
6.2.1 視圖狀態(tài)示例 180
6.2.2 在視圖狀態(tài)中保存對象 181
6.2.3 視圖狀態(tài)評估 183
6.2.4 有選擇地禁用視圖狀態(tài) 184
6.2.5 視圖狀態(tài)安全 185
6.3 在頁面間傳送信息 186
6.3.1 查詢字符串 187
6.3.2 跨頁回發(fā) 188
6.4 cookie 193
6.5 會話狀態(tài) 194
6.5.1 會話架構(gòu) 194
6.5.2 使用會話狀態(tài) 196
6.5.3 配置會話狀態(tài) 197
6.5.4 會話狀態(tài)安全 202
6.6 應(yīng)用程序狀態(tài) 203
6.7 總結(jié) 206
第二部分 數(shù)據(jù)訪問
第7章 基礎(chǔ) 208
7.1 ADO.NET架構(gòu) 209
7.1.1 ADO.NET數(shù)據(jù)提供程序 209
7.1.2 ADO.NET的標(biāo)準(zhǔn)化 210
7.1.3 基本ADO.NET類 211
7.2 Connection類 212
7.2.1 連接字符串 212
7.2.2 測試連接 214
7.2.3 連接池 215
7.3 Command類和DataReader類 217
7.3.1 Command基礎(chǔ) 217
7.3.2 DataReader類 218
7.3.3 ExecuteReader()方法和DataReader 218
7.3.4 ExecuteScalar()方法 223
7.3.5 ExecuteNonQuery()方法 223
7.3.6 SQL注入攻擊 224
7.3.7 使用參數(shù)化命令 226
7.3.8 調(diào)用存儲過程 227
7.4 事務(wù) 229
7.4.1 事務(wù)和ASP.NET應(yīng)用程序 230
7.4.2 隔離級別 234
7.4.3 保存點 235
7.5 提供程序無關(guān)的代碼 235
7.5.1 創(chuàng)建工廠 236
7.5.2 用工廠創(chuàng)建對象 237
7.5.3 使用提供程序無關(guān)的代碼的查詢 237
7.6 總結(jié) 239
第8章 數(shù)據(jù)組件和DataSet 240
8.1 構(gòu)建數(shù)據(jù)訪問組件 240
8.1.1 數(shù)據(jù)包 241
8.1.2 存儲過程 242
8.1.3 數(shù)據(jù)應(yīng)用類 243
8.1.4 測試數(shù)據(jù)庫組件 248
8.2 非連接的數(shù)據(jù) 249
8.2.1 Web應(yīng)用程序和DataSet 250
8.2.2 XML集成 251
8.3 DataSet類 251
8.4 DataAdapter類 252
8.4.1 填充DataSet 253
8.4.2 使用多個表和關(guān)系 254
8.4.3 查找特定行 257
8.4.4 在數(shù)據(jù)訪問類里使用DataSet 257
8.4.5 數(shù)據(jù)綁定 258
8.5 DataView類 259
8.5.1 使用DataView排序 259
8.5.2 使用DataView過濾 261
8.5.3 使用關(guān)系的高級過濾 262
8.5.4 計算列 263
8.6 總結(jié) 264
第9章 數(shù)據(jù)綁定 265
9.1 基本的數(shù)據(jù)綁定 265
9.1.1 單值綁定 266
9.1.2 其他類型的表達(dá)式 268
9.1.3 重復(fù)值綁定 271
9.2 數(shù)據(jù)源控件 277
9.3 SqlDataSource 278
9.3.1 選擇記錄 279
9.3.2 參數(shù)化命令 281
9.3.3 錯誤處理 285
9.3.4 更新記錄 286
9.3.5 刪除記錄 289
9.3.6 插入記錄 289
9.3.7 SqlDataSource的不足 290
9.4 ObjectDataSource 291
9.4.1 選擇記錄 291
9.4.2 更新記錄 295
9.4.3 使用數(shù)據(jù)對象執(zhí)行更新 296
9.5 數(shù)據(jù)源控件的限制 299
9.5.1 問題 299
9.5.2 添加其他項 300
9.5.3 使用SqlDataSource處理其他選項 301
9.5.4 使用ObjectDataSource處理其他選項 301
9.6 總結(jié) 302
第10章 富數(shù)據(jù)控件 303
10.1 GridView 303
10.2 格式化GridView 307
10.2.1 格式化字段 307
10.2.2 樣式 308
10.2.3 格式化特定值 311
10.3 GridView行選擇 313
10.3.1 使用選擇來創(chuàng)建主-從表單 314
10.3.2 SelectedIndexChanged事件 315
10.3.3 將數(shù)據(jù)字段用作選擇按鈕 315
10.4 對GridView排序 316
10.4.1 使用SqlDataSource排序 317
10.4.2 使用ObjectDataSource排序 318
10.4.3 排序和選擇 319
10.4.4 高級排序 319
10.5 GridView分頁 320
10.5.1 自動分頁 320
10.5.2 分頁和選擇 322
10.5.3 ObjectDataSource的自定義分頁 322
10.5.4 定制分頁欄 324
10.6 GridView模板 325
10.6.1 使用多個模板 327
10.6.2 在Visual Studio中編輯模板 328
10.6.3 綁定到方法 328
10.6.4 處理模板中的事件 330
10.6.5 使用模板編輯 330
10.6.6 模板中的客戶端ID 335
10.7 ListView 336
10.7.1 分組 338
10.7.2 分頁 340
10.8 DetailsView和FormView 341
10.8.1 DetailsView 341
10.8.2 FormView 344
10.9 高級網(wǎng)格 345
10.9.1 GridView中的匯總 345
10.9.2 單個表中的父/子視圖 347
10.9.3 使用查找表編輯字段 349
10.9.4 處理來自數(shù)據(jù)庫的圖片 351
10.9.5 探測并發(fā)沖突 355
10.10 總結(jié) 359
第11章 緩存和異步頁面 360
11.1 理解ASP.NET緩存 360
11.2 輸出緩存 361
11.2.1 聲明性的輸出緩存 361
11.2.2 緩存和查詢字符串 362
11.2.3 使用特定查詢字符串參數(shù)的緩存 363
11.2.4 自定義緩存控制 364
11.2.5 使用HttpCachePolicy類進行緩存 365
11.2.6 緩存后替換和部分頁緩存 365
11.2.7 緩存用戶配置 367
11.2.8 緩存配置 368
11.2.9 輸出緩存擴展 369
11.3 數(shù)據(jù)緩存 373
11.3.1 向緩存添加項目 373
11.3.2 簡單的緩存測試 375
11.3.3 緩存優(yōu)先級 376
11.3.4 使用數(shù)據(jù)源控件的緩存 376
11.4 緩存依賴 379
11.4.1 文件和緩存項目依賴 379
11.4.2 聚合依賴 380
11.4.3 移除項目回調(diào) 381
11.4.4 理解SQL緩存通知 383
11.4.5 緩存通知的工作方式 384
11.4.6 啟用通知 384
11.4.7 創(chuàng)建緩存依賴 385
11.5 自定義緩存依賴 386
11.5.1 基本的自定義緩存依賴 386
11.5.2 使用消息隊列的自定義緩存依賴 387
11.6 異步頁面 389
11.6.1 創(chuàng)建異步頁面 390
11.6.2 在異步頁面中查詢數(shù)據(jù) 392
11.6.3 錯誤處理 393
11.6.4 在異步任務(wù)中使用緩存 395
11.6.5 多異步任務(wù)和超時 397
11.7 總結(jié) 399
第12章 文件和流 400
12.1 使用文件系統(tǒng) 400
12.1.1 Directory類和File類 400
12.1.2 DirectoryInfo類和FileInfo類 402
12.1.3 DriveInfo類 404
12.1.4 使用Attributes 405
12.1.5 使用通配符過濾文件 407
12.1.6 獲取文件的版本信息 407
12.1.7 Path類 408
12.1.8 文件瀏覽器 410
12.2 使用流讀寫文件 414
12.2.1 文本文件 415
12.2.2 二進制文件 416
12.2.3 上傳文件 417
12.2.4 使文件對多用戶安全 419
12.2.5 壓縮 423
12.3 序列化 423
12.4 總結(jié) 426
第13章 LINQ 427
13.1 LINQ基礎(chǔ) 427
13.1.1 延遲執(zhí)行 429
13.1.2 LINQ是如何工作的 429
13.1.3 LINQ表達(dá)式 430
13.1.4 揭秘LINQ表達(dá)式 436
13.2 LINQ to DataSet 439
13.2.1 強類型的DataSet 441
13.2.2 空值 441
13.3 LINQ to Entities 441
13.3.1 生成數(shù)據(jù)模型 442
13.3.2 數(shù)據(jù)模型類 442
13.3.3 實體關(guān)系 444
13.3.4 查詢存儲過程 446
13.3.5 LINQ to Entities查詢揭秘 447
13.4 數(shù)據(jù)庫操作 452
13.4.1 插入 452
13.4.2 更新 454
13.4.3 刪除 454
13.4.4 管理并發(fā) 455
13.4.5 處理并發(fā)沖突 455
13.5 EntityDataSource控件 459
13.5.1 顯示數(shù)據(jù) 459
13.5.2 獲取關(guān)聯(lián)數(shù)據(jù) 463
13.5.3 編輯數(shù)據(jù) 464
13.5.4 驗證 464
13.6 使用QueryExtender控件 465
13.6.1 使用SearchExperssion 466
13.6.2 使用RangeExpression 467
13.6.3 使用PropertyExpression 467
13.6.4 使用MethodExpression 468
13.7 總結(jié) 468
第14章 XML 470
14.1 什么時候使用XML 470
14.2 XML簡介 471
14.2.1 XML的優(yōu)點 472
14.2.2 格式良好的XML 472
14.2.3 XML命名空間 473
14.2.4 XML架構(gòu) 474
14.3 基于流的XML處理 475
14.3.1 寫XML文件 476
14.3.2 讀取XML文件 478
14.4 內(nèi)存中的XML處理 481
14.4.1 XmlDocument 482
14.4.2 XPathNavigator 485
14.4.3 XDocument 486
14.5 搜索XML內(nèi)容 491
14.5.1 搜索XmlDocument 491
14.5.2 使用XPath搜索XmlDocument 493
14.5.3 使用LINQ搜索XDocument 494
14.6 驗證XML內(nèi)容 496
14.6.1 基本架構(gòu) 496
14.6.2 驗證XmlDocument 497
14.6.3 使用XDocument進行驗證 498
14.7 轉(zhuǎn)換XML內(nèi)容 499
14.7.1 基本的樣式表 499
14.7.2 使用XslCompiledTransform 500
14.7.3 使用Xml控件 501
14.7.4 使用LINQ to XML轉(zhuǎn)換XML 502
14.8 XML數(shù)據(jù)綁定 504
14.8.1 非層次化綁定 504
14.8.2 使用XPath 506
14.8.3 嵌套的網(wǎng)格 508
14.8.4 使用TreeView的層次化綁定 509
14.8.5 使用XSLT 511
14.8.6 綁定到來自其他源的XML內(nèi)容 512
14.8.7 通過XmlDataSource更新XML 513
14.9 XML和ADO.NET數(shù)據(jù)集 513
14.9.1 把DataSet轉(zhuǎn)換為XML 514
14.9.2 把DataSet作為XML訪問 515
14.10 總結(jié) 517
第三部分 構(gòu)建ASP.NET網(wǎng)站
第15章 用戶控件 520
15.1 用戶控件基礎(chǔ) 520
15.1.1 創(chuàng)建簡單的用戶控件 521
15.1.2 把頁面轉(zhuǎn)換成用戶控件 522
15.2 為用戶控件添加代碼 523
15.2.1 處理事件 523
15.2.2 添加屬性 524
15.2.3 使用自定義對象 525
15.2.4 添加事件 528
15.2.5 公開內(nèi)部Web控件 530
15.3 動態(tài)加載用戶控件 531
15.4 局部頁面緩存 534
15.4.1 VaryByControl 535
15.4.2 共享緩存控件 536
15.5 總結(jié) 537
第16章 主題和母版頁 538
16.1 層疊樣式表 538
16.1.1 創(chuàng)建樣式表 538
16.1.2 應(yīng)用樣式表規(guī)則 540
16.2 主題 542
16.2.1 主題文件夾和外觀 543
16.2.2 應(yīng)用簡單主題 544
16.2.3 處理主題沖突 545
16.2.4 為同一控件創(chuàng)建多個外觀 546
16.2.5 含有模板和圖片的外觀 547
16.2.6 在主題里使用CSS 549
16.2.7 通過配置文件來應(yīng)用主題 549
16.2.8 動態(tài)應(yīng)用主題 550
16.3 標(biāo)準(zhǔn)化網(wǎng)站布局 551
16.4 母版頁基礎(chǔ) 552
16.4.1 簡單的母版頁 552
16.4.2 簡單的內(nèi)容頁 554
16.4.3 默認(rèn)內(nèi)容 556
16.4.4 具有表格和CSS布局的母版頁 556
16.4.5 母版頁和相對路徑 559
16.4.6 通過配置文件應(yīng)用母版頁 559
16.5 高級母版頁 560
16.5.1 和母版頁類交互 560
16.5.2 動態(tài)設(shè)置母版頁 561
16.5.3 嵌套母版頁 561
16.6 總結(jié) 563
第17章 網(wǎng)站導(dǎo)航 564
17.1 多視圖頁面 564
17.1.1 MultiView控件 565
17.1.2 Wizard控件 568
17.2 站點地圖 575
17.2.1 定義站點地圖 576
17.2.2 綁定站點地圖 577
17.2.3 導(dǎo)航路徑 578
17.2.4 顯示站點地圖的一部分 580
17.2.5 站點地圖對象 583
17.2.6 加入自定義站點地圖信息 584
17.2.7 創(chuàng)建自定義的SiteMapProvider 584
17.2.8 安全調(diào)整 590
17.3 URL映射和路由 592
17.3.1 URL映射 592
17.3.2 URL路由 593
17.4 TreeView控件 594
17.4.1 TreeNode 595
17.4.2 按需填充節(jié)點 597
17.4.3 TreeView樣式 598
17.5 Menu控件 601
17.5.1 Menu樣式 603
17.5.2 Menu模板 605
17.6 總結(jié) 606
第18章 網(wǎng)站部署 607
18.1 安裝和配置IIS 607
18.1.1 安裝IIS 7 607
18.1.2 管理IIS 7 608
18.2 部署網(wǎng)站 610
18.2.1 通過復(fù)制文件進行部署 611
18.2.2 使用Web部署 614
18.2.3 通過FTP部署 621
18.3 管理網(wǎng)站 626
18.3.1 創(chuàng)建新站點 626
18.3.2 創(chuàng)建虛擬目錄 627
18.3.3 使用VirtualPathProvider 628
18.3.4 使用應(yīng)用程序池 631
18.3.5 使用應(yīng)用程序預(yù)熱 633
18.4 擴展集成管道 634
18.4.1 創(chuàng)建處理程序 634
18.4.2 部署處理程序 635
18.4.3 配置處理程序 635
18.4.4 測試處理程序 636
18.5 總結(jié) 636
第四部分 安全
第19章 ASP.NET安全模型 638
19.1 為何創(chuàng)建安全軟件 638
19.1.1 理解潛在的威脅 638
19.1.2 安全編程原則 639
19.1.3 理解Gatekeeper 640
19.2 理解安全級別 641
19.2.1 驗證 641
19.2.2 授權(quán) 642
19.2.3 機密性和完整性 643
19.2.4 互相協(xié)作 643
19.3 理解SSL 644
19.3.1 理解證書 645
19.3.2 理解SSL 645
19.3.3 在IIS 7.x中配置SSL 646
19.4 總結(jié) 649
第20章 表單驗證 650
20.1 表單驗證介紹 650
20.1.1 為什么使用表單驗證 650
20.1.2 為什么不使用表單驗證 652
20.1.3 為什么不自己實現(xiàn)cookie驗證 653
20.1.4 表單驗證類 654
20.2 實現(xiàn)表單驗證 655
20.2.1 配置表單驗證 655
20.2.2 禁止匿名用戶訪問 657
20.2.3 創(chuàng)建自定義登錄頁面 658
20.2.4 自定義憑證存儲 662
20.2.5 表單驗證中的持久化cookie 663
20.3 IIS 7.x和表單驗證 665
20.4 總結(jié) 669
第21章 成員資格 670
21.1 介紹ASP.NET的成員資格API 670
21.2 使用成員資格API 672
21.2.1 配置表單驗證 673
21.2.2 創(chuàng)建數(shù)據(jù)存儲 674
21.2.3 配置連接字符串和成員資格提供程序 679
21.2.4 創(chuàng)建并驗證用戶 681
21.3 使用安全控件 683
21.3.1 Login控件 684
21.3.2 LoginStatus控件 693
21.3.3 LoginView控件 693
21.3.4 PasswordRecovery控件 694
21.3.5 ChangePassword控件 697
21.3.6 CreateUserWizard控件 698
21.4 在IIS 7.x里配置成員資格 702
21.4.1 配置提供程序和用戶 702
21.4.2 在其他應(yīng)用程序里使用成員資格API 703
21.5 使用Membership類 705
21.5.1 從存儲中獲得用戶 706
21.5.2 更新存儲中的用戶 708
21.5.3 創(chuàng)建和刪除用戶 708
21.5.4 檢驗用戶 709
21.6 總結(jié) 709
第22章 Windows驗證 710
22.1 介紹Windows驗證 710
22.1.1 為什么使用Windows驗證 710
22.1.2 為什么不使用Windows驗證 711
22.1.3 Windows驗證機制 712
22.2 實現(xiàn)Windows驗證 717
22.2.1 配置IIS 7.x 717
22.2.2 配置ASP.NET 718
22.2.3 IIS 7.x管道 719
22.2.4 禁止匿名用戶訪問 722
22.2.5 訪問Windows用戶信息 723
22.3 身份模擬 727
22.3.1 Windows中的身份模擬和委托 728
22.3.2 經(jīng)過配置的身份模擬 729
22.3.3 可編程的身份模擬 729
22.4 總結(jié) 732
第23章 授權(quán)和角色 733
23.1 URL 授權(quán) 733
23.2 文件授權(quán) 738
23.3 在代碼中檢查授權(quán) 739
23.3.1 使用IsInRole()方法 739
23.3.2 使用PrincipalPermission類 740
23.4 為基于角色的授權(quán)使用角色API 742
23.4.1 和角色一起使用LoginView控件 747
23.4.2 通過編程訪問角色 748
23.4.3 在Windows驗證中使用角色API 750
23.5 IIS 7.x里的授權(quán)和角色 752
23.5.1 在IIS 7.x里使用ASP.NET角色授權(quán) 754
23.5.2 在IIS 7.x中管理ASP.NET角色 756
23.6 總結(jié) 757
第24章 用戶配置 758
24.1 理解用戶配置 758
24.1.1 用戶配置的性能 758
24.1.2 用戶配置如何存儲數(shù)據(jù) 759
24.1.3 用戶配置和驗證 760
24.1.4 用戶配置與自定義的數(shù)據(jù)組件 760
24.2 使用SqlProfileProvider 761
24.2.1 創(chuàng)建用戶配置表 761
24.2.2 配置提供程序 763
24.2.3 定義用戶配置屬性 764
24.2.4 使用用戶配置屬性 764
24.2.5 用戶配置序列化 766
24.2.6 用戶配置組 767
24.2.7 用戶配置和自定義的數(shù)據(jù)類型 768
24.2.8 用戶配置API 771
24.2.9 匿名用戶配置 773
24.3 自定義的用戶配置提供程序 775
24.3.1 自定義的用戶配置提供程序類 775
24.3.2 設(shè)計FactoredProfileProvider 777
24.3.3 通過編碼實現(xiàn)FactoredProfileProvider 778
24.3.4 測試FactoredProfileProvider 781
24.4 總結(jié) 784
第25章 加密 785
25.1 加密數(shù)據(jù):機密性問題 785
25.2 .NET加密命名空間 786
25.3 理解.NET加密類 789
25.3.1 對稱加密算法 790
25.3.2 非對稱加密 791
25.3.3 抽象加密類 791
25.3.4 ICryptoTransform接口 792
25.3.5 CryptoStream類 793
25.4 加密敏感數(shù)據(jù) 793
25.4.1 管理秘密信息 794
25.4.2 使用對稱算法 795
25.4.3 使用非對稱算法 799
25.4.4 加密數(shù)據(jù)庫中的敏感數(shù)據(jù) 801
25.5 加密查詢字符串 806
25.5.1 包裝查詢字符串 806
25.5.2 創(chuàng)建一個測試頁面 808
25.6 總結(jié) 810
第26章 自定義成員資格提供程序 811
26.1 自定義提供程序的架構(gòu) 811
26.2 創(chuàng)建自定義提供程序的基本步驟 812
26.2.1 自定義提供程序的總體設(shè)計 813
26.2.2 設(shè)計并實現(xiàn)自定義存儲 813
26.2.3 實現(xiàn)提供程序類 820
26.2.4 使用自定義提供程序類 837
26.3 總結(jié) 840
第五部分 高級用戶界面
第27章 自定義服務(wù)器控件 842
27.1 自定義服務(wù)器控件入門 842
27.1.1 創(chuàng)建簡單的自定義控件 842
27.1.2 使用自定義控件 844
27.1.3 工具箱中的自定義控件 845
27.1.4 創(chuàng)建支持樣式屬性的Web控件 847
27.1.5 呈現(xiàn)過程 850
27.2 處理不同的瀏覽器 852
27.2.1 HtmlTextWriter 852
27.2.2 瀏覽器檢測 852
27.2.3 瀏覽器屬性 853
27.2.4 覆蓋瀏覽器類型偵測 854
27.2.5 自適應(yīng)呈現(xiàn) 855
27.3 控件狀態(tài)和事件 856
27.3.1 視圖狀態(tài) 856
27.3.2 控件狀態(tài) 858
27.3.3 回傳數(shù)據(jù)和change事件 860
27.3.4 觸發(fā)回傳 862
27.4 擴展現(xiàn)有的Web控件 863
27.4.1 組合控件 864
27.4.2 派生控件 866
27.5 總結(jié) 869
第28章 圖形、GDI+和圖表 870
28.1 ImageMap控件 870
28.1.1 創(chuàng)建熱點 871
28.1.2 處理熱點單擊 872
28.1.3 自定義熱點 873
28.2 使用GDI+畫圖 875
28.2.1 簡單繪制 875
28.2.2 圖像格式和質(zhì)量 877
28.2.3 Graphics類 878
28.2.4 使用GraphicsPath 880
28.2.5 畫筆 881
28.2.6 畫刷 883
28.3 在網(wǎng)頁上嵌入動態(tài)圖形 885
28.3.1 使用PNG格式 885
28.3.2 傳遞信息給動態(tài)圖像 886
28.3.3 使用GDI+的自定義控件 888
28.4 使用Chart控件 892
28.4.1 創(chuàng)建基本的圖表 892
28.4.2 用數(shù)據(jù)填充圖表 897
28.5 總結(jié) 904
第29章 JavaScript和Ajax技術(shù) 905
29.1 JavaScript本質(zhì) 905
29.1.1 HTML DOM 906
29.1.2 客戶端事件 906
29.1.3 腳本塊 908
29.1.4 操縱HTML元素 910
29.1.5 調(diào)試JavaScript 910
29.2 基本的JavaScript示例 912
29.2.1 創(chuàng)建JavaScript頁面處理器 912
29.2.2 使用JavaScript異步下載圖片 915
29.2.3 呈現(xiàn)腳本塊 919
29.3 腳本注入攻擊 920
29.3.1 請求驗證 921
29.3.2 禁用請求驗證 922
29.3.3 擴展請求驗證 923
29.4 帶有JavaScript的自定義控件 925
29.4.1 彈出窗口 925
29.4.2 滾動按鈕 928
29.5 框架 931
29.5.1 框架導(dǎo)航 932
29.5.2 內(nèi)聯(lián)框架 933
29.6 理解Ajax 934
29.6.1 XMLHttpRequest對象 935
29.6.2 Ajax示例 936
29.7 在客戶端回調(diào)中使用Ajax 939
29.7.1 創(chuàng)建客戶端回調(diào) 940
29.7.2 深入了解客戶端回調(diào) 945
29.7.3 自定義控件里的客戶端回調(diào) 946
29.8 總結(jié) 949
第30章 ASP.NETAJAX 950
30.1 介紹ASP.NETAJAX 950
30.1.1 客戶端的ASP.NETAJAX:腳本庫 951
30.1.2 服務(wù)器端的ASP.NETAJAX:ScriptManager 952
30.2 服務(wù)器回調(diào) 952
30.2.1 ASP.NETAJAX中的Web服務(wù) 953
30.2.2 在頁面里放置Web方法 959
30.2.3 ASP.NETAJAX應(yīng)用程序服務(wù) 960
30.3 ASP.NETAJAX服務(wù)器控件 966
30.3.1 使用UpdatePanel的局部呈現(xiàn) 966
30.3.2 使用Timer的定時刷新 973
30.3.3 使用UpdateProgress的耗時更新 974
30.3.4 管理瀏覽器歷史 976
30.4 深入客戶端庫 979
30.4.1 理解客戶端模型 980
30.4.2 JavaScript的面向?qū)ο缶幊獭?81
30.4.3 網(wǎng)頁框架 987
30.5 控件擴展器 991
30.5.1 安裝ASP.NETAJAX控件工具包 992
30.5.2 AutoCompleteExtender 993
30.5.3 ASP.NETAJAX控件工具包 996
30.6 總結(jié) 999
第31章 使用Web部件頁面的門戶網(wǎng)站 1000
31.1 典型門戶頁面 1000
31.2 基本W(wǎng)eb部件頁面 1002
31.2.1 創(chuàng)建頁面設(shè)計 1002
31.2.2 WebPartManager和WebPartZone 1003
31.2.3 向頁面添加Web部件 1004
31.2.4 定制頁面 1008
31.3 創(chuàng)建Web部件 1010
31.3.1 簡單的Web部件任務(wù) 1010
31.3.2 開發(fā)高級Web部件 1017
31.3.3 Web部件編輯器 1024
31.3.4 連接Web部件 1029
31.3.5 自定義動詞和Web部件 1036
31.3.6 用戶控件和高級Web部件 1037
31.3.7 動態(tài)上傳Web部件 1040
31.3.8 對Web部件的授權(quán) 1044
31.3.9 個性化的最后任務(wù) 1045
31.4 總結(jié) 1046
第32章 MVC 1047
32.1 MVC和Web表單的選擇 1047
32.2 創(chuàng)建基本的MVC應(yīng)用程序 1047
32.2.1 創(chuàng)建模型 1048
32.2.2 創(chuàng)建控制器 1049
32.2.3 創(chuàng)建Index視圖 1050
32.2.4 測試(未完成的)應(yīng)用程序 1050
32.2.5 完成控制器和視圖 1051
32.2.6 修改Site.Master文件 1053
32.3 擴展基礎(chǔ)的MVC應(yīng)用程序 1053
32.3.1 配置路由 1054
32.3.2 增加錯誤處理 1055
32.3.3 增加驗證 1056
32.3.4 增強數(shù)據(jù)存儲訪問 1057
32.3.5 增加對外鍵約束的支持 1059
32.4 自定義視圖 1059
32.4.1 修改視圖 1060
32.4.2 增加視圖數(shù)據(jù) 1062
32.5 強化模型 1063
32.6 驗證數(shù)據(jù) 1066
32.6.1 執(zhí)行基本的驗證 1067
32.6.2 增加驗證標(biāo)注 1068
32.7 使用動作結(jié)果 1071
32.7.1 返回JSON數(shù)據(jù) 1072
32.7.2 調(diào)用其他控制器方法 1072
32.8 總結(jié) 1074
第33章 動態(tài)數(shù)據(jù) 1075
33.1 創(chuàng)建動態(tài)數(shù)據(jù)應(yīng)用程序 1075
33.1.1 創(chuàng)建動態(tài)數(shù)據(jù)網(wǎng)站 1075
33.1.2 檢驗動態(tài)數(shù)據(jù)網(wǎng)站 1077
33.2 深入理解動態(tài)數(shù)據(jù)項目 1080
33.3 自定義動態(tài)數(shù)據(jù)網(wǎng)站 1080
33.3.1 使用模板進行自定義 1081
33.3.2 使用路由進行自定義 1087
33.3.3 使用元數(shù)據(jù)進行自定義 1094
33.3.4 自定義驗證 1099
33.4 總結(jié) 1103
第34章 Silverlight 1104
34.1 理解Silverlight 1105
34.1.1 Silverlight與Flash對比 1106
34.1.2 Silverlight系統(tǒng)需求 1107
34.2 創(chuàng)建Silverlight解決方案 1108
34.2. 1 Silverlight編譯 1109
34.2.2 入口頁面 1110
34.3 創(chuàng)建Silverlight項目 1114
34.3.1 設(shè)計Silverlight頁面 1114
34.3.2 理解XAML 1117
34.3.3 設(shè)置屬性 1118
34.3.4 XAML 代碼隱藏 1119
34.3.5 處理事件 1120
34.3.6 了解Silverlight類庫 1121
34.4 布局 1122
34.4.1 Canvas 1123
34.4.2 網(wǎng)格 1127
34.5 動畫 1131
34.5.1 動畫基礎(chǔ)知識 1132
34.5.2 定義動畫 1132
34.5.3 StoryBoard類 1133
34.5.4 交互式動畫實例 1135
34.5.5 變換 1138
34.6 Silverlight使用Web服務(wù) 1141
34.6.1 創(chuàng)建Web服務(wù) 1141
34.6.2 添加Web引用 1142
34.6.3 調(diào)用Web服務(wù) 1143
34.6.4 配置Web服務(wù)URL 1144
34.6.5 跨域Web服務(wù)調(diào)用 1144
34.7 總結(jié) 1146
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載
ASP.NET 4高級程序設(shè)計(第4版) PDF格式下載