1.1 簡史 1
1.2 ASP.NET 2.0的目標 2
1.2.1 開發(fā)人員的效率 3
1.2.2 管理 5
1.2.3 性能和可伸縮性 8
1.3 ASP.NET 2.0的其他新特性 8
1.3.1 新的開發(fā)人員體系結構 8
1.3.2 新的編譯系統(tǒng) 12
1.3.3 ASP.NET應用程序的
健康監(jiān)控 13
1.3.4 讀寫配置設置 15
1.3.5 本地化 16
1.3.6 頁面框架的新增內容 16
1.3.7 訪問數據的新對象 18
1.3.8 新的服務器控件 18
1.4 建立ASP.NET 2.0頁面
的新IDE 19
1.5 小結 21
第2章 Visual Studio 2005 23
2.1 Visual Studio 2005的各種版本 23
2.2 啟動頁面 25
2.3 文檔窗口 25
2.3.1 文檔窗口中的視圖 25
2.3.2 標記導航器 26
2.3.3 頁面標簽 27
2.3.4 代碼改變的通知 28
2.3.5 錯誤通知和輔助 29
2.4 工具箱 30
2.5 Solution Explorer 32
2.6 Server Explorer 33
2.7 Properties窗口 34
2.8 一些不可見的窗口 34
2.9 其他常見的Visual Studio操作 35
2.9.1 創(chuàng)建新項目 35
2.9.2 引用其他對象 35
2.9.3 使用智能標記 37
2.9.4 保存和導入Visual Studio
設置 38
2.9.5 驗證HTML 39
2.9.6 團隊的合作 41
2.9.7 使用代碼片斷 41
2.9.8 以新的方式使用類 43
2.10 小結 48
第3章 應用程序和頁面框架 49
3.1 應用程序的位置選項 49
3.1.1 內置的Web服務器 49
3.1.2 IIS 50
3.1.3 FTP 51
3.1.4 Web站點需要FrontPage
Extensions 52
3.2 ASP.NET頁面結構選項 53
3.2.1 內嵌編碼 54
3.2.2 新的后臺編碼模型 56
3.3 ASP.NET 2.0的Page指令 58
3.3.1 @Page指令 59
3.3.2 @Master指令 61
3.3.3 @Control指令 62
3.3.4 @Import指令 63
3.3.5 @Implements指令 65
3.3.6 @Register指令 65
3.3.7 @Assembly指令 65
3.3.8 @PreviousPageType指令 66
3.3.9 @MasterType指令 66
3.3.10 @OutputCache指令 66
3.3.11 @Reference指令 67
3.4 ASP.NET頁面的事件 67
3.5 處理回送 69
3.6 跨頁面的傳送 69
3.7 ASP.NET應用程序文件夾 76
3.7.1 \App_Code文件夾 76
3.7.2 \App_Data文件夾 81
3.7.3 \App_Themes文件夾 81
3.7.4 \App_GlobalResources
文件夾 81
3.7.5 \App_LocalResources
文件夾 81
3.7.6 \App_WebReferences
文件夾 82
3.7.7 \App_Browsers文件夾 82
3.8 編譯 82
3.9 建立提供程序 85
3.9.1 使用內置的提供程序 87
3.9.2 使用自己的提供程序 87
3.10 Global.asax 92
3.11 小結 96
第4章 ASP.NET服務器控件和
客戶端腳本 97
4.1 ASP.NET服務器控件 97
4.1.1 服務器控件的類型 98
4.1.2 用服務器控件構建頁面 99
4.1.3 處理服務器控件的事件 100
4.2 給服務器控件應用樣式 103
4.2.1 控件的常見屬性 103
4.2.2 使用層疊樣式表改變樣式 104
4.3 HTML服務器控件 109
4.3.1 HtmlControl基類 111
4.3.2 HtmlContainerControl類 112
4.3.3 所有的HTML類 112
4.3.4 使用HtmlGenericControl類 113
4.4 通過JavaScript處理頁面和
服務器控件 114
4.4.1 使用Page.ClientScript.Register
ClientScriptBlock 116
4.4.2 使用Page.ClientScript.
RegisterStartupScript 117
4.4.3 使用Page.ClientScript.Register
ClientScriptInclude 119
4.5 客戶端回調 119
4.5.1 比較典型的回送和回調 120
4.5.2 使用回調功能:一種簡單
的方法 121
4.5.3 使用帶參數的回調功能 126
4.5.4 使用回調功能:一個復雜
的例子 129
4.6 小結 134
第5章 ASP.NET Web服務器控件 135
5.1 Web服務器控件概述 135
5.2 Label服務器控件 136
5.3 Literal服務器控件 138
5.4 TextBox服務器控件 139
5.4.1 使用Focus()方法 140
5.4.2 使用AutoPostBack 140
5.4.3 使用AutoCompleteType 142
5.5 Button服務器控件 142
5.5.1 CausesValidation屬性 143
5.5.2 CommandName屬性 143
5.5.3 使用客戶端JavaScript
的按鈕 144
5.6 LinkButton服務器控件 146
5.7 ImageButton服務器控件 146
5.8 HyperLink服務器控件 148
5.9 DropDownList服務器控件 148
5.10 從集合中可視化地刪除條目 151
5.11 ListBox服務器控件 152
5.11.1 允許用戶選擇多項 153
5.11.2 使用ListBox控件的例子 153
5.11.3 給集合添加條目 156
5.12 CheckBox服務器控件 156
5.12.1 確定復選框是否被選中 158
5.12.2 給復選框賦值 158
5.12.3 排列復選框的文本 158
5.13 CheckBoxList服務器控件 159
5.14 RadioButton服務器控件 161
5.15 RadioButtonList服務器控件 163
5.16 Image服務器控件 165
5.17 Table服務器控件 166
5.18 Calendar服務器控件 168
5.18.1 從Calendar控件中選擇
一個日期 169
5.18.2 從日歷控件中選擇要輸出
的日期格式 170
5.18.3 選擇日期、星期或月份 170
5.18.4 使用日期范圍 171
5.18.5 修改日歷的樣式和
操作方式 173
5.19 AdRotator服務器控件 176
5.20 Xml服務器控件 178
5.21 Panel服務器控件 178
5.22 PlaceHolder服務器控件 181
5.23 小結 181
第6章 ASP.NET 2.0的Web服務
器控件 183
6.1 BulletedList服務器控件 183
6.2 HiddenField服務器控件 188
6.3 FileUpload服務器控件 190
6.3.1 使用FileUpload控件
上傳文件 190
6.3.2 指定正確的ASP.NET權限
給上傳文件 193
6.3.3 理解文件大小的限制 194
6.3.4 從同一個頁面上傳多個
文件 195
6.3.5 把上傳的文件放在Stream
對象中 198
6.3.6 把文件內容從Stream對象
移動到Byte數組中 199
6.4 MultiView和View服務器
控件 199
6.5 Wizard服務器控件 203
6.5.1 定制邊欄導航 205
6.5.2 AllowReturn屬性 206
6.5.3 使用StepType屬性 206
6.5.4 給Wizard控件添加標題 207
6.5.5 使用向導的導航系統(tǒng) 207
6.5.6 使用Wizard控件的事件 208
6.5.7 使用Wizard控件顯示
窗體元素 210
6.6 ImageMap服務器控件 214
6.7 小結 216
第7章 驗證服務器控件 217
7.1 有效性驗證 217
7.2 客戶端和服務器端的驗證 218
7.3 ASP.NET驗證服務器控件 219
7.3.1 驗證原因 220
7.3.2 RequiredFieldValidator
服務器控件 220
7.3.3 CompareValidator服務器
控件 225
7.3.4 RangeValidator服務器
控件 228
7.3.5 RegularExpressionValidator
服務器控件 232
7.3.6 CustomValidator服務器
控件 233
7.3.7 ValidationSummary服務器
控件 238
7.4 關閉客戶端驗證功能 241
7.5 為錯誤通知使用圖像和聲音 242
7.6 使用驗證組 243
7.7 小結 247
第8章 使用Master頁面 249
8.1 需要Master頁面的原因 249
8.2 Master頁面基礎 251
8.3 編寫Master頁面 252
8.4 編寫內容頁面 255
8.4.1 混合頁面類型和語言 258
8.4.2 指定要使用的Master頁面 259
8.4.3 使用頁面標題 260
8.4.4 使用Master頁面中的控件
和屬性 261
8.5 在Master頁面中指定
默認內容 268
8.6 以編程方式將Master頁面
賦予內容頁面 270
8.7 Master頁面的嵌套 270
8.8 容器特定的Master頁面 273
8.9 事件的觸發(fā)順序 275
8.10 高速緩存Master頁面 275
8.11 小結 276
第9章 主題和Skin 277
9.1 使用ASP.NET 2.0中的主題 277
9.1.1 給單個ASP.NET頁面
應用主題 277
9.1.2 把主題應用于整個應用
程序 279
9.1.3 刪除服務器控件中的主題 279
9.1.4 刪除Web頁面上的主題
特性 280
9.1.5 使用Master頁面時應用
主題 280
9.1.6 StyleSheetTheme屬性 281
9.2 創(chuàng)建自己的主題 281
9.2.1 創(chuàng)建正確的文件夾結構 281
9.2.2 創(chuàng)建Skin 282
9.2.3 在主題中包含CSS文件 284
9.2.4 使主題包含圖像 287
9.3 定義多個Skin選項 290
9.4 編程使用主題 292
9.4.1 編程指定頁面的主題 292
9.4.2 編程指定控件的SkinID 292
9.5 主題、Skin和定制控件 293
9.6 小結 296
第10章 集合和列表 297
10.1 數組 297
10.1.1 重新設置數組的大小 300
10.1.2 查找數組中的對象 300
10.1.3 給數組中的對象排序 304
10.2 System.Collections命名空間 305
10.2.1 ArrayList 305
10.2.2 IEnumerable和
IEnumerator 308
10.2.3 ICollection 309
10.2.4 Lists和IList 310
10.2.5 字典和IDictionary 311
10.2.6 散列表 312
10.2.7 SortedList 316
10.2.8 Queue和Stack 316
10.3 專用集合 319
10.3.1 HybridDictionary和
ListDictionary 319
10.3.2 StringCollection、
StringDictionary和
NameValueCollection 319
10.3.3 BitArray 319
10.4 Microsoft.VisualBasic.
Collection類 320
10.5 強類型化的集合 320
10.6 System.Collections.Generics 323
10.6.1 泛型的定義 323
10.6.2 泛型列表 324
10.6.3 泛型字典 326
10.6.4 其他泛型集合 327
10.7 集合從.NET 1.1到.NET 2.0
的變化 327
10.8 集合和列表總結 327
10.9 小結 330
第11章 ASP.NET 2.0中的數據
綁定 331
11.1 數據源控件 331
11.1.1 SqlDataSource控件 334
11.1.2 AccessDataSource控件 343
11.1.3 XmlDataSource控件 344
11.1.4 ObjectDataSource控件 345
11.1.5 SiteMapDataSource控件 349
11.2 配置數據源控件的高速緩存 350
11.3 存儲連接信息 350
11.4 使用綁定的列表控件和數據
源控件 353
11.4.1 GridView 353
11.4.2 編輯GridView中的
數據行 368
11.4.3 刪除GridView數據 375
11.4.4 DetailsView 377
11.4.5 使用DetailsView插入、
更新和刪除數據 383
11.4.6 FormView控件 385
11.5 其他數據綁定控件 389
11.5.1 DropDownList、ListBox、
RadioButtonList和
CheckBoxList 389
11.5.2 TreeView控件 390
11.5.3 Ad Rotator控件 390
11.5.4 Menu 391
11.6 內部數據綁定語法 391
11.6.1 DataBinder語法的變化 392
11.6.2 XML數據綁定器 393
11.7 表達式和表達式構建器 393
11.8 小結 399
第12章 使用ADO.NET管理數據 401
12.1 ADO.NET的基本功能 401
12.1.1 常見的ADO.NET任務 401
12.1.2 ADO.NET的基本命名
空間和類 406
12.1.3 使用Connection對象 407
12.1.4 使用Command對象 408
12.1.5 使用DataReader對象 409
12.1.6 使用數據適配器 411
12.1.7 使用參數 414
12.1.8 DataSet和DataTable 417
12.1.9 將Oracle用作
ASP.NET 2.0的數據庫 422
12.2 ADO.NET的新增功能 425
12.2.1 從各種數據源中批量
加載數據 425
12.2.2 批處理多個更新 435
12.2.3 多個活動的結果集 441
12.2.4 命令的異步執(zhí)行 447
12.2.5 異步連接 468
12.3 小結 469
第13章 使用XML 471
13.1 XML基礎 471
13.1.1 XML InfoSet 473
13.1.2 XSD/XML模式定義 474
13.1.3 在Visual Studio 2005中
編輯XML和XML模式 476
13.2 XmlReader和XmlWriter 479
13.2.1 使用模式和Xml
TextReader 481
13.2.2 包含NameTable優(yōu)化 483
13.2.3 從XML中提取.NET
CLR類型 485
13.2.4 ReadSubtree和
XmlSerialization 487
13.2.5 用XmlWriter創(chuàng)建XML 489
13.2.6 2.0版本中XmlReader和
XmlWriter的改進 491
13.3 XmlDocument和
XPathDocument 492
13.3.1 DOM存在的問題 492
13.3.2 XPath、XPathDocument
和XmlDocument 492
13.4 DataSet 496
13.4.1 把DataSet保存
到XML中 496
13.4.2 XmlDataDocument 497
13.5 XmlDataSource控件 499
13.6 XSLT 503
13.6.1 XslCompiledTransform 504
13.6.2 XML Web服務器控件 506
13.6.3 XSLT調試 508
13.7 數據庫和XML 508
13.7.1 FOR XML AUTO子句 509
13.7.2 SQL Server 2005和XML
數據類型 513
13.8 小結 519
第14章 提供程序模型概述 521
14.1 提供程序概述 521
14.2 將提供程序模型引入
ASP.NET 2.0 523
14.2.1 設置提供程序,以使用
Microsoft SQL Server 7.0、
2000或2005 524
14.2.2 成員提供程序 530
14.2.3 角色提供程序 534
14.2.4 個性化提供程序 538
14.2.5 站點地圖提供程序 540
14.2.6 會話狀態(tài)提供程序 541
14.2.7 Web事件提供程序 543
14.2.8 配置提供程序 551
14.2.9 WebParts提供程序 553
14.3 提供程序的配置 555
14.4 小結 556
第15章 擴展提供程序模型 557
15.1 提供程序是較大體系結構
中的一層 557
15.2 通過基于屬性的編程改變
提供程序的行為 558
15.2.1 通過SqlMembership
Provider建立簡單的
密碼結構 558
15.2.2 通過SqlMembership
Provider建立強類型的
密碼結構 561
15.3 ProviderBase類 562
15.4 建立自己的提供程序 564
15.4.1 創(chuàng)建CustomProviders
應用程序 564
15.4.2 構建需要的類框架 565
15.4.3 創(chuàng)建XML用戶數據庫 569
15.4.4 在web.config文件中定義
提供程序實例 570
15.4.5 沒有實現Membership
Provider類的方法
和屬性 571
15.4.6 實現MembershipProvider
類的方法和屬性 572
15.4.7 使用XmlMembership
Provider進行
用戶登錄 580
15.5 擴展預定義的提供程序 581
15.5.1 用新的LimitedSqlRole
Provider提供程序限制
角色功能 581
15.5.2 使用新的LimitedSqlRole
Provider提供程序 585
15.6 小結 589
第16章 站點導航 591
16.1 基于XML的站點地圖 591
16.2 SiteMapPath服務器控件 593
16.2.1 PathSeparator屬性 595
16.2.2 PathDirection 屬性 597
16.2.3 ParentLevelsDisplayed
屬性 597
16.2.4 ShowToolTips屬性 598
16.2.5 SiteMapPath控件的
子元素 599
16.3 TreeView服務器控件 599
16.3.1 標識TreeView控件
的內置樣式 603
16.3.2 TreeView控件的各個
部分 604
16.3.3 在XML文件中綁定
TreeView控件 604
16.3.4 在TreeView中選擇
多個選項 607
16.3.5 在TreeView控件中
指定定制的圖標 610
16.3.6 指定用于連接節(jié)點
的線條 611
16.3.7 編程使用TreeView控件 613
16.4 Menu服務器控件 619
16.4.1 給Menu控件應用
不同的樣式 620
16.4.2 Menu事件 625
16.4.3 把Menu控件綁定到
XML文件上 625
16.5 SiteMap數據提供程序 627
16.5.1 ShowStartingNode屬性 627
16.5.2 StartFromCurrentNode
屬性 628
16.5.3 StartingNodeOffset屬性 629
16.5.4 StartingNodeUrl屬性 630
16.6 SiteMap API 630
16.7 URL映射 633
16.8 站點地圖的本地化 634
16.8.1 為本地化構建
Web.sitemap文件 634
16.8.2 修改Web.config文件 635
16.8.3 創(chuàng)建程序集資源(.resx)
文件 636
16.8.4 測試結果 637
16.9 安全補償 638
16.9.1 啟動管理員的角色
管理功能 638
16.9.2 建立管理員的配置段 639
16.9.3 啟用安全補償功能 640
16.10 嵌套站點地圖文件 642
16.11 小結 644
第17章 個性化 645
17.1 個性化模型 645
17.2 創(chuàng)建個性化屬性 646
17.2.1 添加簡單的個性化屬性 646
17.2.2 使用個性化屬性 648
17.2.3 添加一組個性化屬性 651
17.2.4 使用分組的個性化屬性 652
17.2.5 為個性化屬性定義類型 652
17.2.6 使用定制的類型 653
17.2.7 提供默認值 656
17.2.8 把個性化屬性指定為
只讀 656
17.3 匿名個性化 657
17.3.1 支持終端用戶的
匿名身份 657
17.3.2 使用匿名身份事件 660
17.3.3 個性化屬性的匿名選項 661
17.3.4 有關匿名用戶配置
信息的警告 661
17.4 編程訪問個性化功能 662
17.4.1 遷移匿名用戶 662
17.4.2 profile的個性化 664
17.4.3 確定是否繼續(xù)自動
保存profile值 665
17.5 個性化提供程序 666
17.5.1 使用SQL Server Express
Edition 666
17.5.2 使用Microsoft的SQL
Server 7.0/2000/2005 667
17.5.3 使用多個提供程序 669
17.6 管理應用程序的配置 670
17.6.1 ProfileManager類的
屬性 670
17.6.2 ProfileManager類的
方法 671
17.6.3 建立ProfileManager.aspx
頁面 671
17.6.4 解釋ProfileManager.aspx
頁面的代碼 674
17.6.5 運行ProfileManager.aspx
頁面 676
17.7 小結 676
第18章 成員和角色管理 677
18.1 身份驗證 677
18.2 授權 677
18.3 ASP.NET 2.0的身份驗證 678
18.3.1 為成員建立Web站點 678
18.3.2 添加用戶 680
18.3.3 請求憑證 694
18.3.4 處理驗證用戶 701
18.3.5 顯示在線用戶數 704
18.3.6 處理密碼 705
18.4 ASP.NET 2.0的授權 710
18.4.1 使用LoginView服務器
控件 710
18.4.2 為角色管理建立Web
站點 712
18.4.3 添加和檢索應用程序
角色 715
18.4.4 刪除角色 717
18.4.5 給角色添加用戶 718
18.4.6 獲取某個角色的所有
用戶 719
18.4.7 獲取包含某個用戶的
所有角色 721
18.4.8 從角色中刪除用戶 722
18.4.9 檢查角色中的用戶 722
18.4.10 角色的高速緩存方式 724
18.5 使用Web站點管理工具 724
18.6 Membership API的公共方法 725
18.7 Roles API的公共方法 726
18.8 小結 726
第19章 Portal Framework和
Web Part 727
19.1 Web Part簡介 727
19.2 建立動態(tài)的模塊化Web
站點 729
19.2.1 WebPartManager控件 729
19.2.2 使用區(qū)域進行布局 730
19.2.3 WebPartZone控件 733
19.2.4 允許用戶改變頁面
的模式 735
19.2.5 修改區(qū)域 746
19.3 使用Portal Framework中
的類 752
19.4 創(chuàng)建定制的Web Part 754
19.5 連接Web Part 760
19.5.1 建立提供程序Web Part 761
19.5.2 建立用戶Web Part 764
19.5.3 連接ASP.NET頁面
上的Web Part 766
19.5.4 連接Web Part時處理
Master頁面的難點 769
19.6 小結 770
第20章 安全性 771
20.1 身份驗證和授權 771
20.2 應用身份驗證措施 772
20.2.1 <authentication>節(jié)點 773
20.2.2 基于Windows的
身份驗證 773
20.2.3 基于窗體的身份驗證 780
20.2.4 Passport身份驗證 789
20.3 驗證特定的文件和文件夾 790
20.4 編程授權 790
20.4.1 使用User.Identity 791
20.4.2 使用User.IsInRole() 792
20.4.3 用WindowsIdentity顯示
更多信息 793
20.5 身份和模擬 795
20.6 通過IIS進行保護 798
20.6.1 IP地址和域名限制 798
20.6.2 使用文件擴展名 799
20.6.3 使用新的ASP.NET MMC
管理單元 801
20.7 小結 802
第21章 狀態(tài)管理 803
21.1 如何選擇 803
21.2 ASP.NET 2.0中的Session
對象 806
21.2.1 會話和事件模型 806
21.2.2 配置會話狀態(tài)的管理 807
21.2.3 進程中的會話狀態(tài) 808
21.2.4 進程外的會話狀態(tài) 815
21.2.5 SQL支持的會話狀態(tài) 820
21.2.6 用其他提供程序擴展
會話狀態(tài) 822
21.2.7 無cookie的會話狀態(tài) 824
21.2.8 選擇維護狀態(tài)的
正確方式 825
21.3 Application對象 825
21.4 查詢字符串 826
21.5 cookie 826
21.6 回送和跨頁面的回送 827
21.7 隱藏的字段、ViewState和
ControlState 829
21.8 為短時間狀態(tài)存儲應用
HttpContext.Current.Items 833
21.9 小結 834
第22章 高速緩存 837
22.1 高速緩存 837
22.1.1 輸出高速緩存 837
22.1.2 部分頁面(UserControl)的
高速緩存 840
22.1.3 Post-Cache Substitution 841
22.1.4 HttpCachePolicy和客戶
端高速緩存 843
22.2 編程高速緩存 845
22.2.1 使用Cache對象高速
緩存數據 845
22.2.2 高速緩存依賴性 846
22.3 使用SQL Server高速緩存
依賴性 852
22.3.1 使數據庫支持SQL Server
高速緩存禁用功能 853
22.3.2 使表支持SQL Server
高速緩存禁用功能 853
22.3.3 對SQL Server的影響 853
22.3.4 查看支持SQL高速
緩存禁用功能的表 854
22.3.5 使表不支持SQL Server
高速緩存禁用功能 855
22.3.6 使數據庫不支持SQL Server
高速緩存禁用功能 855
22.3.7 SQL Server 2005高速緩存
禁用功能 856
22.4 配置ASP.NET應用程序 857
22.5 測試SQL Server高速緩存
禁用功能 858
22.5.1 給頁面添加多個表 860
22.5.2 給SQL Server高速緩存
依賴性和Request對象
建立關聯(lián) 860
22.5.3 給SQL Server高速緩存
依賴性和Cache對象
建立關聯(lián) 861
22.6 小結 864
第23章 調試和錯誤處理技術 867
23.1 設計期間的支持 867
23.1.1 語法通知 867
23.1.2 Immediate和Command
窗口 869
23.1.3 任務列表 870
23.2 跟蹤 871
23.2.1 System.Diagnostics.Trace
和ASP.NET的
Page.Trace 871
23.2.2 頁面級的跟蹤 871
23.2.3 應用程序的跟蹤 872
23.2.4 查看跟蹤數據 872
23.2.5 在組件中跟蹤 875
23.2.6 跟蹤的傳送 876
23.2.7 TraceListener 877
23.2.8 診斷選項 881
23.2.9 Web事件 882
23.3 調試 884
23.3.1 需要的內容 884
23.3.2 IIS和ASP.NET開發(fā)
服務器 885
23.3.3 啟動調試會話 886
23.3.4 有助于調試的新工具 889
23.3.5 SQL存儲過程的調試 892
23.4 異常和錯誤處理 893
23.4.1 處理頁面上的異常 893
23.4.2 處理應用程序異常 894
23.4.3 HTTP狀態(tài)碼 895
23.5 小結 896
第24章 文件I/O和流 897
24.1 使用驅動器、目錄和文件 897
24.1.1 DriveInfo類 897
24.1.2 Directory和Directory
Info類 901
24.1.3 File和FileInfo類 907
24.1.4 使用路徑 911
24.1.5 文件和目錄的屬性、特性
和訪問控制列表 915
24.2 讀寫文件 922
24.2.1 Stream類 923
24.2.2 Reader和Writer類 927
24.2.3 壓縮流 932
24.3 處理串行端口 937
24.4 網絡通信 938
24.4.1 WebRequest和
WebResponse 938
24.4.2 發(fā)送郵件 945
24.5 小結 946
第25章 用戶控件和服務器控件 947
25.1 用戶控件 947
25.1.1 創(chuàng)建用戶控件 947
25.1.2 與用戶控件交互 950
25.1.3 動態(tài)加載用戶控件 952
25.2 服務器控件 957
25.2.1 項目的建立 958
25.2.2 控件的屬性 961
25.2.3 控件的顯示 963
25.2.4 添加標記屬性 966
25.2.5 給HTML設置樣式 967
25.2.6 主題和Skin 969
25.2.7 添加客戶端特性 970
25.2.8 檢測和響應瀏覽器功能 980
25.2.9 使用ViewState 982
25.2.10 引發(fā)PostBack事件 988
25.2.11 處理回送數據 991
25.2.12 復合控件 993
25.2.13 模板化控件 996
25.2.14 在設計期間創(chuàng)建控件 1003
25.3 小結 1022
第26章 模塊和處理程序 1023
26.1 處理HTTP請求 1023
26.2 HttpModule 1024
26.2.1 修改HTTP輸出 1026
26.2.2 URL的重寫 1029
26.2.3 IIS 通配符 1033
26.3 HttpHandler 1034
26.3.1 一般的處理程序 1034
26.3.2 在IIS中映射文件
擴展名 1039
26.4 小結 1040
第27章 使用業(yè)務對象 1043
27.1 使用ASP.NET 2.0中的
業(yè)務對象 1043
27.1.1 創(chuàng)建預編譯的.NET
業(yè)務對象 1043
27.1.2 在ASP.NET應用程序
中使用預編譯的
業(yè)務對象 1046
27.2 COM交互操作性:在.NET
中使用COM 1047
27.2.1 運行庫可調用
包裝(RCW) 1047
27.2.2 在ASP.NET代碼中
使用COM對象 1048
27.2.3 錯誤處理 1053
27.2.4 用.NET應用程序
部署COM組件 1056
27.3 在非托管代碼中使用.NET 1057
27.3.1 COM可調用包裝
(CCW) 1058
27.3.2 在COM對象中使用
.NET組件 1059
27.3.3 早期綁定和后期綁定 1063
27.3.4 錯誤處理 1064
27.3.5 用COM應用程序
部署.NET組件 1065
27.4 小結 1067
第28章 移動開發(fā) 1069
28.1 創(chuàng)建新的ASP.NET移動
Web應用程序 1069
28.2 使用控件容器 1073
28.2.1 Form控件 1073
28.2.2 Panel控件 1074
28.3 使用樣式表 1074
28.4 使用ASP.NET移動控件 1076
28.4.1 AdRotator控件 1076
28.4.2 Calendar控件 1078
28.4.3 Label控件 1081
28.4.4 TextBox控件 1081
28.4.5 TextView控件 1083
28.4.6 Command控件 1084
28.4.7 Image控件 1084
28.4.8 PhoneCall控件 1085
28.4.9 Link控件 1087
28.4.10 List控件 1088
28.4.11 ObjectList控件 1091
28.4.12 SelectionList控件 1092
28.5 使用驗證控件 1096
28.6 在移動Web窗體之間導航 1098
28.7 移動Web用戶控件 1098
28.8 使用模擬器 1102
28.9 設備過濾器 1102
28.10 ASP.NET移動應用程序
中的狀態(tài)管理 1104
28.10.1 移動Web控件中的
ViewState 1105
28.10.2 管理會話狀態(tài) 1106
28.10.3 隱藏字段 1106
28.11 小結 1108
第29章 建立和使用XML
Web服務 1109
29.1 不同系統(tǒng)之間的通信 1109
29.2 建立一個簡單的XML Web
服務 1111
29.2.1 WebService頁面指令 1112
29.2.2 查看Web服務的基類
文件 1112
29.2.3 把定制的數據集顯示
為SOAP 1114
29.2.4 XML Web服務接口 1116
29.3 使用簡單的XML Web服務 1119
29.3.1 添加Web引用 1119
29.3.2 在客戶應用程序中
調用Web服務 1121
29.4 Web服務的傳輸協(xié)議 1123
29.4.1 HTTP-GET 1125
29.4.2 HTTP-POST 1127
29.4.3 SOAP 1128
29.5 Web方法的重載 1128
29.6 高速緩存Web服務的響應 1131
29.7 SOAP標題 1132
29.7.1 用SOAP標題建立
Web服務 1132
29.7.2 通過SOAP標題使用
Web服務 1134
29.7.3 使用SOAP 1.2請求
Web服務 1137
29.8 異步使用Web服務 1138
29.9 小結 1141
第30章 本地化 1143
30.1 文化和地區(qū) 1143
30.1.1 理解文化類型 1144
30.1.2 ASP.NET線程 1145
30.1.3 服務器端的文化聲明 1147
30.1.4 客戶端的文化聲明 1149
30.1.5 翻譯值和行為 1150
30.2 ASP.NET 2.0資源文件 1157
30.2.1 使用本地資源 1157
30.2.2 使用全局資源 1163
30.3 資源編輯器 1165
30.4 小結 1166
第31章 配置 1167
31.1 配置概述 1167
31.1.1 服務器配置文件 1168
31.1.2 應用程序配置文件 1171
31.1.3 配置設置的應用 1171
31.1.4 檢測配置文件的變化 1172
31.1.5 配置文件的格式 1172
31.2 公共配置設置 1173
31.2.1 連接字符串 1173
31.2.2 配置會話狀態(tài) 1174
31.2.3 編譯配置 1178
31.2.4 瀏覽器的功能 1180
31.2.5 定制錯誤 1182
31.2.6 身份驗證 1183
31.2.7 匿名身份 1186
31.2.8 授權 1186
31.2.9 鎖定配置設置 1188
31.2.10 ASP.NET頁面配置 1189
31.2.11 include文件 1191
31.2.12 配置ASP.NET運行
時設置 1191
31.2.13 配置ASP.NET
輔助進程 1194
31.2.14 存儲與應用程序
相關的設置 1196
31.2.15 配置文件的編程 1197
31.2.16 保護配置設置 1203
31.2.17 編輯配置文件 1207
31.3 小結 1209
第32章 測試 1211
32.1 使用事件日志 1211
32.1.1 讀取事件日志 1212
32.1.2 寫入事件日志 1214
32.2 使用性能計數器 1217
32.2.1 通過管理工具查看
性能計數器 1217
32.2.2 建立基于瀏覽器的
管理工具 1218
32.3 應用程序的跟蹤 1224
32.4 健康監(jiān)控 1224
32.4.1 健康監(jiān)控的提供程序
模型 1226
32.4.2 健康監(jiān)控的配置 1227
32.4.3 通過配置寫入事件:
運行示例 1233
32.4.4 把事件路由到
SQL Server中 1234
32.4.5 緩存Web事件 1237
32.4.6 通過電子郵件發(fā)送
Web事件 1239
32.5 小結 1245
第33章 管理 1247
33.1 Web站點管理工具 1247
33.1.1 Home選項卡 1248
33.1.2 Security選項卡 1249
33.1.3 Application選項卡 1258
33.1.4 Provider選項卡 1260
33.2 MMC ASP.NET管理單元 1262
33.2.1 General選項卡 1263
33.2.2 Custom Errors選項卡 1265
33.2.3 Authorization選項卡 1265
33.2.4 Authentication選項卡 1267
33.2.5 Application選項卡 1268
33.2.6 State Management
選項卡 1269
33.2.7 Locations選項卡 1270
33.3 小結 1270
第34章 打包和部署ASP.NET
應用程序 1271
34.1 部署各個部分 1271
34.2 部署之前的準備 1272
34.3 部署Web應用程序的方法 1272
34.3.1 使用XCopy 1273
34.3.2 使用VS Copy Web Site
選項 1275
34.3.3 部署預編譯的Web
應用程序 1278
34.3.4 建立安裝程序 1279
34.4 安裝程序的選項 1287
34.4.1 使用部署項目的屬性 1287
34.4.2 File System編輯器 1290
34.4.3 Registry編輯器 1293
34.4.4 File Types編輯器 1294
34.4.5 User Interface編輯器 1295
34.4.6 Custom Actions編輯器 1297
34.4.7 Launch Conditions
編輯器 1297
34.5 小結 1298
附錄A Visual Basic 8.0和C# 2.0
語言的改進 1299
A.1 概述 1299
A.2 泛型 1300
A.2.1 泛型集合 1300
A.2.2 泛型方法 1304
A.3 迭代器 1306
A.4 匿名方法 1307
A.5 運算符重載 1309
A.6 全局命名空間限定符 1310
A.7 部分類 1310
A.8 Visual Basic XML文檔 1313
A.9 靜態(tài)類 1314
A.10 屬性訪問器 1314
A.11 無符號類型 1315
A.12 默認實例 1316
A.13 Visual Basic的新關鍵字 1316
A.13.1 Continue 1316
A.13.2 Using 1317
A.13.3 My 1318
A.13.4 IsNot 1319
A.13.5 TryCast 1319
附錄B 遷移ASP.NET 1.x項目 1321
B.1 遷移過程并不難 1321
B.1.1 同時運行Framework的
多個版本 1321
B.1.2 將ASP.NET 1.x應用程序
升級到2.0版本 1321
B.2 混合版本——窗體驗證 1323
B.3 升級——新保留的文件夾 1323
B.4 ASP.NET 2.0頁面是
XHTML 1324
B.5 在ASP.NET 2.0中沒有
硬編碼的.js文件 1326
B.6 在Visual Studio 2005中轉換
ASP.NET 1.x應用程序 1327
附錄C 使用Atlas 1333
C.1 XMLHttpRequest對象 1333
C.2 安裝Atlas 1335
C.3 Atlas:一個簡單的例子 1337
C.4 小結 1346
附錄D ASP.NET在線資源 1347
D.1 作者的Blog 1347
D.2 ASP.NET有影響的Blog 1347
D.3 Web站點 1347