第Ⅰ部分 生成ASP.NET頁面
第1章 ASP.NET編程模型 2
1.1 究竟什么是ASP.NET 2
1.1.1 Web窗體中的編程 4
1.1.2 通過HTTP的事件驅動編程 4
1.1.3 HTTP協議 6
1.1.4 ASP.NET頁面的結構 8
1.2 ASP.NET組件模型 11
1.2.1 組件交互模型 11
1.2.2 runat屬性 12
1.2.3 ASP.NET服務器控件 15
1.3 ASP.NET開發(fā)棧 16
1.3.1 表示層 16
1.3.2 頁面框架 17
1.3.3 HTTP運行時環(huán)境 18
1.4 ASP.NET提供程序模型 21
1.4.1 提供程序模型的基本原理 21
1.4.2 ASP.NET實現概述 24
1.5 小結 27
第2章 在Visual Studio .NET 2005
中進行 Web開發(fā) 29
2.1 Visual Studio .NET 2005簡介 29
2.1.1 Visual Studio .NET 2003
的共同苦惱 30
2.1.2 Visual Studio .NET 2005
的突出特征 31
2.2 創(chuàng)建一個ASP.NET項目 36
2.2.1 網頁設計特征 36
2.2.2 在項目中添加代碼 43
2.2.3 ASP.NET的保留文件夾 47
2.2.4 建立ASP.NET項目 52
2.3 應用程序部署 54
2.3.1 XCopy部署 54
2.3.2 站點預編譯 57
2.4 ASP.NET應用程序的管理 59
2.4.1 網站管理工具 59
2.4.2 編輯ASP.NET配置文件 62
2.5 小結 64
第3章 ASP.NET頁面剖析 66
3.1 頁面的激活 66
3.1.1 運行機制 66
3.1.2 處理請求 72
3.1.3 頁面的處理指令 76
3.2 Page類 83
3.2.1 Page類的屬性 83
3.2.2 Page類的方法 86
3.2.3 Page類的事件 90
3.2.4 事件模型 91
3.3 頁面的生命期 92
3.3.1 頁面建立 92
3.3.2 處理回發(fā) 95
3.3.3 頁面結束階段 96
3.4 小結 97
第4章 ASP.NET核心服務器控件 99
4.1 ASP.NET服務器控件的一般性 100
4.1.1 Control類的一般性 100
4.1.2 Control類的方法 102
4.1.3 Control類的事件 103
4.1.4 新特征 104
4.2 HTML控件 107
4.2.1 HTML控件的一般性 107
4.2.2 HTML容器控件 109
4.2.3 HTML輸入控件 114
4.2.4 HtmlImage控件 119
4.3 Web控件 120
4.3.1 Web控件的一般性 120
4.3.2 核心Web控件 122
4.3.3 其他Web控件 128
4.4 驗證控件 132
4.4.1 驗證控件的一般性 132
4.4.2 控件庫 134
4.4.3 特殊能力 137
4.5 小結 142
第5章 使用頁面 144
5.1 窗體編程 144
5.1.1 HtmlForm類 145
5.1.2 多窗體 146
5.1.3 跨頁投遞 150
5.2 處理頁面錯誤 154
5.2.1 錯誤處理基本知識 154
5.2.2 把錯誤映射到頁面 158
5.3 ASP.NET跟蹤 162
5.3.1 跟蹤ASP.NET的執(zhí)行流 162
5.3.2 編寫跟蹤消息 164
5.3.3 跟蹤查看器 165
5.4 網頁個性化 166
5.4.1 創(chuàng)建用戶配置文件 167
5.4.2 與頁面交互 170
5.4.3 配置文件提供程序 175
5.5 小結 178
第6章 Rich Page組合 180
6.1 使用母版頁 180
6.1.1 用ASP.NET 1.x創(chuàng)建
Rich Page 181
6.1.2 編寫母版頁 182
6.1.3 編寫內容頁 184
6.1.4 處理母版頁和內容頁 189
6.1.5 母版頁的編程 192
6.2 使用主題 194
6.2.1 理解ASP.NET主題 195
6.2.2 設置頁面和控件的主題 198
6.2.3 使用主題 201
6.3 使用向導 204
6.3.1 Wizard控件概述 204
6.3.2 給向導添加步驟 208
6.3.3 通過向導進行導航 211
6.4 小結 214
第Ⅱ部分 向ASP.NET網站添加數據
第7章 ADO.NET數據提供程序 218
7.1 .NET數據訪問基礎結構 218
7.1.1 .NET托管的數據提供
程序 219
7.1.2 通過ADO.NET訪問
的數據源 222
7.1.3 提供程序工廠模型 224
7.2 連接到數據源 227
7.2.1 SqlConnection類 227
7.2.2 連接字符串 232
7.2.3 連接池 238
7.3 執(zhí)行命令 242
7.3.1 SqlCommand類 242
7.3.2 ADO.NET數據閱讀器 245
7.3.3 異步命令 250
7.3.4 使用事務 254
7.3.5 SQL Server 2005特有的
增強功能 258
7.4 小結 261
第8章 ADO.NET數據容器 263
8.1 數據適配器 263
8.1.1 SqlDataAdapter類 264
8.1.2 表映射機制 269
8.1.3 批更新的工作原理 272
8.2 內存中的數據容器對象 274
8.2.1 DataSet對象 275
8.2.2 DataTable對象 280
8.2.3 數據關系 285
8.2.4 DataView對象 287
8.3 小結 289
第9章 數據綁定模型 291
9.1 基于數據源的數據綁定 291
9.1.1 可用的數據源 291
9.1.2 數據綁定屬性 294
9.1.3 列表控件 298
9.1.4 迭代控件 303
9.2 數據綁定表達式 308
9.2.1 簡單的數據綁定 308
9.2.2 DataBinder類 310
9.2.3 其他數據綁定方法 312
9.3 數據源組件 315
9.3.1 數據源組件概述 315
9.3.2 數據源控件的本質 316
9.3.3 SqlDataSource控件 318
9.3.4 AccessDataSource類 323
9.3.5 ObjectDataSource控件 324
9.3.6 SiteMapDataSource類 332
9.3.7 XmlDataSource類 335
9.4 小結 338
第10章 創(chuàng)建可綁定的數據網格 340
10.1 DataGrid控件 340
10.1.1 DataGrid對象模型 341
10.1.2 把數據綁定到網格 344
10.1.3 使用DataGrid 348
10.2 GridView控件 351
10.2.1 GridView對象模型 351
10.2.2 把數據綁定到一個
GridView控件 355
10.2.3 數據分頁 364
10.2.4 數據排序 370
10.2.5 編輯數據 375
10.2.6 高級功能 378
10.3 小結 383
第11章 管理一個記錄的視圖 385
11.1 DetailsView控件 385
11.1.1 DetailsView對象模型 385
11.1.2 把數據綁定到一個
DetailsView控件 391
11.1.3 創(chuàng)建Master/Detail視圖 393
11.1.4 使用數據 396
11.2 FormView控件 404
11.2.1 FormView對象模型 404
11.2.2 把數據綁定到FormView
控件 405
11.2.3 編輯數據 408
11.3 小結 410
第Ⅲ部分 ASP.NET基礎結構
第12章 HTTP請求上下文 414
12.1 應用程序初始化 414
12.1.1 HttpApplication類
的屬性 415
12.1.2 應用程序模塊 415
12.1.3 HttpApplication類
的方法 416
12.1.4 HttpApplication類
的事件 417
12.2 global.asax文件 419
12.2.1 編譯global.asax文件 419
12.2.2 global.asax的語法 421
12.2.3 跟蹤錯誤和異常 423
12.3 HttpContext類 424
12.3.1 HttpContext類的屬性 425
12.3.2 HttpContext類的方法 426
12.4 Server對象 428
12.4.1 HttpServerUtility類
的屬性 428
12.4.2 HttpServerUtility類
的方法 428
12.5 HttpResponse對象 433
12.5.1 HttpResponse類的屬性 433
12.5.2 HttpResponse類的方法 436
12.6 HttpRequest對象 438
12.6.1 HttpRequest類的屬性 438
12.6.2 HttpRequest類的方法 441
12.7 小結 442
第13章 狀態(tài)管理 444
13.1 應用程序的狀態(tài) 444
13.1.1 HttpApplicationState類
的屬性 445
13.1.2 HttpApplicationState類
的方法 446
13.1.3 狀態(tài)同步 446
13.1.4 應用程序狀態(tài)的折衷 447
13.2 會話的狀態(tài) 448
13.2.1 會話狀態(tài)HTTP模塊 449
13.2.2 HttpSessionState類
的屬性 453
13.2.3 HttpSessionState類
的方法 454
13.3 使用會話狀態(tài) 455
13.3.1 標識一個會話 455
13.3.2 會話的生命期 459
13.3.3 把會話數據持久存儲
到遠程服務器中 461
13.3.4 把會話數據持久存儲
在SLQ Server中 465
13.4 定制會話狀態(tài)管理 469
13.4.1 建立一個定制的會話狀態(tài)
提供程序 470
13.4.2 生成一個定制的會話ID 473
13.5 頁面的視圖狀態(tài) 475
13.5.1 StateBag類 475
13.5.2 視圖狀態(tài)的常見問題 476
13.5.3 沒有視圖狀態(tài)的
Web窗體編程 479
13.5.4 ASP.NET 2.0視圖狀態(tài)
的變化 481
13.5.5 把視圖狀態(tài)保存
在服務器上 485
13.6 小結 488
第14章 ASP.NET的緩存機制 490
14.1 緩存應用程序數據 490
14.1.1 Cache類 490
14.1.2 使用ASP.NET Cache
對象 494
14.1.3 實踐問題 501
14.1.4 設計定制的依賴對象 506
14.1.5 XML數據的緩存依賴
對象 508
14.1.6 SQL Server緩存依賴
對象 512
14.2 緩存ASP.NET頁面 518
14.2.1 @OutputCache指令 519
14.2.2 HttpCachePolicy類 524
14.2.3 緩存頁面的多個版本 526
14.2.4 緩存部分ASP.NET頁面 529
14.2.5 ASP.NET 2.0中的
高級特征 533
14.3 小結 535
第15章 ASP.NET的安全性 537
15.1 威脅來自何方 537
15.2 ASP.NET的安全性上下文 538
15.2.1 究竟誰在運行我的
ASP.NET應用程序? 538
15.2.2 改變ASP.NET進程
的身份 541
15.2.3 ASP.NET應用程序的
信任等級 543
15.2.4 ASP.NET的身份驗證
方法 546
15.3 使用窗體身份驗證 547
15.3.1 窗體身份驗證控制流 548
15.3.2 FormsAuthentication類 551
15.3.3 窗體身份驗證的配置 553
15.3.4 高級的窗體身份驗證
特征 556
15.4 成員資格和角色管理API 560
15.4.1 Membership類 561
15.4.2 成員資格提供程序 565
15.4.3 角色管理 569
15.5 安全性相關的控件 573
15.5.1 Login控件 573
15.5.2 LoginName控件 575
15.5.3 LoginStatus控件 576
15.5.4 LoginView控件 577
15.5.5 PasswordRecovery控件 579
15.5.6 ChangePassword控件 580
15.5.7 CreateUserWizard控件 582
15.6 小結 583