第1章 Web 编程介绍 1
1.1 应用程序的类型 1
1.1.1 可以创建的应用程序 2
1.1.2 Web 应用程序的工作原理 2
1.1.3 ASP.NET 提供的内容 4
1.1.4 ASP.NET 的优势 5
1.2 使用 ASP.NET 5
1.2.1 Web 应用程序的组成部分 6
1.2.2 Web Form 组件 7
1.2.3 .NET Framework 7
1.2.4 编程语言 11
1.3 使用 Visual Studio.NET 13
1.3.1 Start 页 13
1.3.2 Visual Studio.NET 的窗口 15
1.3.3 Toolbox 17
1.3.4 编辑 Web 文档 18
1.3.5 编辑代码 19
1.3.6 Solution Explorer 21
1.3.7 运行一个项目 21
1.3.8 设置 Breakpoints 并观察变量 22
1.3.9 执行语句 23
1.3.10 获得帮助 24
1.4 本章小结 25
1.5 实验:开始使用 Visual Studio.NET 26
1.6 复习 32
第2章 创建 Web 窗体应用程序 33
2.1 创建 Web 应用程序项目 33
2.1.1 创建一个新的 Web 应用程序 34
2.1.2 用 IIS 组织您的项目 34
2.1.3 创建虚拟文件夹来组织 Web 应用程序 35
2.1.4 添加控件并编写代码 38
2.1.5 Web 窗体项目中的文件 40
2.1.6 Web 应用程序中的文件 41
2.2 响应事件 41
2.2.1 Web 应用程序生存期中的事件 42
2.2.2 在 Web 窗体上保持数据 43
2.2.3 Application 和 Session 事件 44
2.2.4 Web 窗体事件 46
2.2.5 服务器控件事件 47
2.3 进程发生的位置 49
2.3.1 设置应用程序边界 49
2.3.2 管理进程 50
2.3.3 确定应用程序何时结束 51
2.4 本章小结 52
2.5 实验:生成一个简单的 Web 应用程序 52
2.6 复习 59
第3章 使用 Web 对象 60
3.1 命名空间基础知识 60
3.1.1 理解命名空间 61
3.1.2 引用和导入 65
3.1.3 类和模块 66
3.2 Web 应用程序中的命名空间 82
3.2.1 Web 命名空间 82
3.2.2 使用 Application 对象 84
3.2.3 使用 Page 对象 85
3.2.4 使用 Request 对象 86
3.2.5 使用 Response 对象 87
3.3 维护状态信息 88
3.3.1 状态的级别 88
3.3.2 使用查询字符串 88
3.3.3 使用 cookie 89
3.3.4 使用 ViewState 90
3.4 本章小结 94
3.5 实验:使用对象并保存数据 94
3.6 复习 100
第4章 创建用户界面 102
4.1 使用控件 102
4.1.1 选择布局 103
4.1.2 选择合适的控件 104
4.1.3 文本操作 106
4.1.4 表和列表操作 107
4.1.5 执行命令 115
4.1.6 获取和设置值 119
4.1.7 显示图形和广告 120
4.1.8 控件分组 122
4.1.9 获取日期 123
4.1.10 从客户端获取文件 125
4.2 验证数据 127
4.2.1 使用验证 127
4.2.2 组合验证 129
4.2.3 取消验证 130
4.2.4 自定义验证 131
4.3 在窗体间导航 133
4.3.1 导航方法 134
4.3.2 使用超链接和重定向 134
4.3.3 使用 Transfer 方法 134
4.3.4 使用 Execute 方法 136
4.3.5 在新的浏览器窗口中显示页面 137
4.4 本章小结 140
4.5 实验:生成一个基于 Web 的文本编辑器 141
4.6 复习 156
第5章 利用 ADO.NET 存储和检索数据 157
5.1 利用 ADO.NET 访问数据 157
5.1.1 了解 ADO.NET 158
5.1.2 连接到数据库 159
5.1.3 创建数据集 161
5.1.4 显示数据集 162
5.1.5 更改 DataSet 中的记录 164
5.1.6 ADO.NET 如何引用对象 164
5.1.7 添加、更改和删除行 165
5.1.8 从 DataSet 更新 Database 167
5.1.9 在运行时创建数据库连接 169
5.1.10 更新运行时的数据库连接 170
5.2 在 Web 窗体上使用数据集 172
5.2.1 在 DataGrid 控件中显示数据集 172
5.2.2 在 DataList 控件中显示数据集 174
5.2.3 在其他列表控件中显示数据项 177
5.2.4 选择特定记录 179
5.2.5 在 Database 上执行命令 180
5.2.6 从 Database 中返回值 181
5.2.7 直接在 Database 中更改记录 182
5.2.8 直接从 Database 中获取记录 183
5.3 处理事务 184
5.3.1 理解事务 185
5.3.2 数据集事务 186
5.3.3 数据库事务 188
5.3.4 企业事务 192
5.4 本章小结 193
5.5 实验:生成 Contact Management 应用程序 193
5.6 复习 210
第6章 捕获和纠正错误 211
6.1 使用异常处理 211
6.1.1 异常处理技术 212
6.1.2 使用异常处理块 212
6.1.3 引发异常 217
6.1.4 定义新异常 219
6.1.5 使用出错事件 221
6.2 使用错误页面 223
6.2.1 处理与 Internet 相关的异常 223
6.2.2 使用应用程序级的错误页面 224
6.2.3 使用页面级的错误页面 225
6.3 记录异常 227
6.3.1 使用跟踪记录错误 227
6.3.2 打开和关闭跟踪 227
6.3.3 将消息写入跟踪日志 229
6.3.4 读取跟踪日志 230
6.4 本章小结 231
6.5 实验:在应用程序中添加异常处理 231
6.6 复习 237
第7章 高级 Web 窗体编程 238
7.1 保存和检索用户信息 238
7.1.1 识别 Web 应用程序用户 239
7.1.2 在客户端上存储用户信息 239
7.1.3 在服务器上存储用户信息 243
7.1.4 创建惟一键来标识用户 243
7.1.5 创建文件来保存用户信息 244
7.1.6 创建 XML 文件 244
7.1.7 创建 XML 架构 245
7.1.8 指定键字段 245
7.1.9 将 XML 读取到数据集中 246
7.1.10 将用户信息保存到服务器上 247
7.1.11 从数据集中获取用户信息 248
7.2 发送邮件 249
7.2.1 从客户端发送邮件 249
7.2.2 从服务器发送邮件 250
7.3 使用框架 252
7.3.1 在 Visual Studio 中创建框架 252
7.3.2 创建框架集 252
7.3.3 创建网页并添加到框架中 254
7.3.4 检查浏览器是否支持框架 255
7.3.5 用链接命中框架 256
7.4 使用客户端脚本 257
7.4.1 准备使用脚本 258
7.4.2 选择一种脚本语言 259
7.4.3 理解 DOM 259
7.4.4 添加嵌入脚本 259
7.4.5 用脚本过程响应事件 262
7.5 消费 XML Web 服务 267
7.5.1 找到 XML Web 服务 267
7.5.2 使用 XML Web 服务 268
7.5.3 从客户端脚本使用 XML Web 服务 269
7.6 本章小结 271
7.7 实验:使用高级功能 272
7.8 复习 282
第8章 安全性维护 283
8.1 身份验证和授权 283
8.1.1 匿名用户访问 284
8.1.2 已验证用户的访问 286
8.1.3 带有 HTM 和 HTML 文件的身份验证 286
8.2 使用 Windows 身份验证 287
8.2.1 启用 Windows 身份验证 288
8.2.2 允许或拒绝特定用户的访问 290
8.2.3 使用基于角色的授权 290
8.2.4 获取用户标识 291
8.2.5 使用具有 Windows 身份验证的 IIS 设置 292
8.3 使用 Forms 身份验证 293
8.3.1 启用 Forms 身份验证 293
8.3.2 设置 Forms 身份验证模式 294
8.3.3 用数据库验证用户 297
8.3.4 向数据库中添加用户 298
8.3.5 根据数据库验证用户 300
8.4 使用 Passport 身份验证 302
8.5 提供安全通信 306
8.5.1 启用安全通信 306
8.5.2 生成证书请求 308
8.5.3 请求证书 309
8.5.4 安装证书 309
8.5.5 使用安全通信 310
8.6 本章小结 312
8.7 实验:创建安全的应用程序 312
8.8 复习 322
第9章 生成和部署 Web 应用程序 323
9.1 生成 Web 应用程序 323
9.1.1 设置生成选项 324
9.1.2 标识应用程序 324
9.1.3 配置应用程序 326
9.2 部署 Web 应用程序 327
9.2.1 使用上传工具 328
9.2.2 装载到自己的服务器上 328
9.2.3 建立虚拟文件夹 328
9.2.4 复制应用程序 329
9.2.5 安装共享组件 329
9.2.6 赋予安全特权 330
9.3 维护已部署的应用程序 332
9.3.1 监控服务器 333
9.3.2 修复已部署的应用程序 340
9.3.3 调整已部署的应用程序 342
9.3.4 设置缓存选项 342
9.3.5 改变应用程序的保护级别 343
9.3.6 调整 processModel 属性 343
9.3.7 调整 sessionState 属性 344
9.3.8 优化提示 344
9.4 在多台服务器上部署 345
9.4.1 多处理器伸缩 345
9.4.2 多服务器扩展 346
9.4.3 共享状态信息 347
9.5 本章小结 348
9.6 实验:生成和部署 Web 应用程序 348
9.7 复习 351
第10章 测试 Web 应用程序 352
10.1 创建测试 352
10.1.1 制订测试计划 353
10.1.2 测试类型 353
10.1.3 单元测试 354
10.1.4 集成测试 357
10.1.5 回归测试 358
10.1.6 负载测试 359
10.1.7 平台测试 361
10.2 运行测试 362
10.2.1 用 ACT 运行测试 363
10.2.2 用 NET 程序集进行测试 368
10.2.3 运行无人值守的生成和测试 371
10.3 调试 374
10.3.1 将测试结果应用于工作中 374
10.3.2 使用 Debug 和 Trace 类 377
10.3.3 显示警报和消息 378
10.3.4 将 Debug 和 Trace 信息写入日志 379
10.3.5 远程调试 380
10.4 本章小结 382
10.5 实验:测试和调试 383
10.6 复习 385
第11章 创建自定义的 Web 控件 386
11.1 创建 Web 用户控件 386
11.1.1 创建和使用用户控件 387
11.1.2 创建用户控件并绘制其界面 387
11.1.3 编写控件的属性、方法和事件 389
11.1.4 向 Web 窗体添加控件 391
11.1.5 在代码中使用控件 392
11.1.6 向用户控件添加事件 393
11.1.7 使用网格布局 394
11.2 创建复合自定义控件 395
11.2.1 创建和使用复合自定义控件 396
11.2.2 创建自定义控件项目 396
11.2.3 创建测试项目 399
11.2.4 在测试项目中添加自定义控件 400
11.2.5 创建复合控件的外观 403
11.2.6 创建属性和方法 405
11.2.7 处理事件 409
11.2.8 引发事件 410
11.2.9 处理控件的大小调整 412
11.2.10 超类服务器控件 413
11.3 创建呈现的自定义控件 414
11.3.1 创建和使用呈现控件 415
11.3.2 创建呈现控件的外观 415
11.3.3 保存属性设置 418
11.3.4 获取包含的文本 419
11.3.5 响应用户操作 421
11.3.6 引发缓存事件 422
11.3.7 引发回递事件 424
11.3.8 获取来自用户的数据 426
11.3.9 向工具箱中添加自定义控件 430
11.3.10 为自定义控件设置工具箱图标和 TagPrefix 431
11.4 本章小结 432
11.5 实验:创建自定义控件 432
11.6 复习 434
第12章 处理多媒体 435
12.1 播放音频 435
12.1.1 播放音频的方法 436
12.1.2 播放背景声音 436
12.1.3 嵌入声音 437
12.1.4 作为 ActiveX 对象的声音 437
12.2 显示视频 444
12.2.1 播放视频的方法 444
12.2.2 使用 img 元素 445
12.2.3 嵌入视频 445
12.2.4 作为 ActiveX 对象的视频 446
12.2.5 Netscape Navigator 中的 ActiveX 对象 447
12.2.6 Windows Media Player 的版本 447
12.3 Web 页面动画 449
12.3.1 显示动画的方法 449
12.3.2 文字动画 450
12.3.3 简单的图像动画 452
12.3.4 把动画作为对象或插件来显示 453
12.3.5 用客户端脚本来控制动画 453
12.3.6 用 HTML+TIME 来处理动画 455
12.3.7 使用 HTML+TIME 455
12.3.8 创建时间线 457
12.3.9 创建时间线容器 458
12.3.10 动画属性 459
12.3.11 控制音频/视频和其他媒体 459
12.4 本章小结 460
12.5 实验:创建多媒体应用程序 461
12.6 复习 462
第13章 格式化 Web 应用程序输出 464
13.1 使用级联样式表 464
13.1.1 样式如何运行 465
13.1.2 在 Web 窗体中使用样式表 466
13.1.3 修改样式 467
13.1.4 添加样式 468
13.1.5 使用样式类 468
13.1.6 为特定元素创建样式 469
13.1.7 创建嵌套样式 470
13.1.8 在运行时改变样式表 471
13.1.9 使用行为 473
13.2 使用 XSL 转换 476
13.2.1 XSL 转换如何运行 476
13.2.2 创建 XML 文件 477
13.2.3 创建 XSL 文件 479
13.2.4 改变布局 480
13.2.5 包括其他模板 481
13.2.6 重复任务 483
13.2.7 插入超链接和其他 HTML 元素 485
13.2.8 对条目排序 486
13.2.9 执行条件任务 486
13.3 本章小结 488
13.4 实验:创建食谱 488
13.5 复习 492
第14章 提供帮助 493
14.1 向 Web 应用程序添加帮助 493
14.1.1 显示工具提示 493
14.1.2 将帮助作为 Web 窗体或 HTML 显示 494
14.1.3 显示 HTML 帮助 496
14.2 使用 HTML Help Workshop 498
14.2.1 创建 HTML 帮助 498
14.2.2 设置项目选项 500
14.2.3 构造内容表 500
14.2.4 添加索引入口项 503
14.2.5 添加交叉引用 504
14.2.6 启用搜索 506
14.2.7 编译和预览帮助 507
14.3 把 HTML 帮助链接到 Web 窗体上 507
14.3.1 显示 HTML Help Viewer 507
14.3.2 在浏览器中显示 HTML 帮助 508
14.3.3 显示上下文相关帮助 509
14.4 本章小结 511
14.5 实验:构造和使用 HTML 帮助文件 511
14.6 复习 515
第15章 Web 应用程序的国际化 516
15.1 方法选择 516
15.1.1 国际化 Web 应用程序的方法 517
15.1.2 检测用户的文化习俗 517
15.1.3 重定向到具有特定文化习俗的 Web 应用程序上 518
15.1.4 在运行时调整当前文化习俗 522
15.1.5 使用附属程序集 526
15.2 创建并使用附属程序集 526
15.2.1 附属程序集如何运行 527
15.2.2 让 HTML 元素来使用资源 528
15.2.3 创建资源文件 529
15.2.4 加载资源文件 531
15.2.5 获取和设置用户界面的文化习俗 531
15.2.6 显示资源字符串 533
15.3 国际化问题 534
15.3.1 一般编码问题 534
15.3.2 字符编码 535
15.4 本章小结 537
15.5 实验:创建货币转换器 538
15.6 复习 543
附录 A 复习题答案 544
附录 B 考试重点索引 554
附录 C 微软认证专家计划 558
术语表 562