1.1 简史 1
1.2 ASP.NET 2.0的目标 2
1.2.1 开发人员的效率 3
1.2.2 管理 5
1.2.3 性能和可伸缩性 8
1.3 ASP.NET 2.0的其他新特性 8
1.3.1 新的开发人员体系结构 8
1.3.2 新的编译系统 12
1.3.3 ASP.NET应用程序的
健康监控 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 创建新项目 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 使用向导的导航系统 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 事件的触发顺序 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 创建自己的主题 281
9.2.1 创建正确的文件夹结构 281
9.2.2 创建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 命令的异步执行 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优化 483
13.2.3 从XML中提取.NET
CLR类型 485
13.2.4 ReadSubtree和
XmlSerialization 487
13.2.5 用XmlWriter创建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 会话状态提供程序 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 创建CustomProviders
应用程序 564
15.4.2 构建需要的类框架 565
15.4.3 创建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 指定用于连接节点
的线条 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 创建程序集资源(.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 创建个性化属性 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 确定是否继续自动
保存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 建立动态的模块化Web
站点 729
19.2.1 WebPartManager控件 729
19.2.2 使用区域进行布局 730
19.2.3 WebPartZone控件 733
19.2.4 允许用户改变页面
的模式 735
19.2.5 修改区域 746
19.3 使用Portal Framework中
的类 752
19.4 创建定制的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>节点 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章 状态管理 803
21.1 如何选择 803
21.2 ASP.NET 2.0中的Session
对象 806
21.2.1 会话和事件模型 806
21.2.2 配置会话状态的管理 807
21.2.3 进程中的会话状态 808
21.2.4 进程外的会话状态 815
21.2.5 SQL支持的会话状态 820
21.2.6 用其他提供程序扩展
会话状态 822
21.2.7 无cookie的会话状态 824
21.2.8 选择维护状态的
正确方式 825
21.3 Application对象 825
21.4 查询字符串 826
21.5 cookie 826
21.6 回送和跨页面的回送 827
21.7 隐藏的字段、ViewState和
ControlState 829
21.8 为短时间状态存储应用
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对象
建立关联 860
22.5.3 给SQL Server高速缓存
依赖性和Cache对象
建立关联 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开发
服务器 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状态码 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 发送邮件 945
24.5 小结 946
第25章 用户控件和服务器控件 947
25.1 用户控件 947
25.1.1 创建用户控件 947
25.1.2 与用户控件交互 950
25.1.3 动态加载用户控件 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 引发PostBack事件 988
25.2.11 处理回送数据 991
25.2.12 复合控件 993
25.2.13 模板化控件 996
25.2.14 在设计期间创建控件 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章 使用业务对象 1043
27.1 使用ASP.NET 2.0中的
业务对象 1043
27.1.1 创建预编译的.NET
业务对象 1043
27.1.2 在ASP.NET应用程序
中使用预编译的
业务对象 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章 移动开发 1069
28.1 创建新的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移动应用程序
中的状态管理 1104
28.10.1 移动Web控件中的
ViewState 1105
28.10.2 管理会话状态 1106
28.10.3 隐藏字段 1106
28.11 小结 1108
第29章 建立和使用XML
Web服务 1109
29.1 不同系统之间的通信 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服务的传输协议 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 文化和地区 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 配置会话状态 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 健康监控 1224
32.4.1 健康监控的提供程序
模型 1226
32.4.2 健康监控的配置 1227
32.4.3 通过配置写入事件:
运行示例 1233
32.4.4 把事件路由到
SQL Server中 1234
32.4.5 缓存Web事件 1237
32.4.6 通过电子邮件发送
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 静态类 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