第1章 ASP.NET入门 1
1.1 什么是静态Web页 2
1.2 静态Web页的工作原理 3
1.2.1 静态Web页的局限性 3
1.2.2 什么是Web服务器 4
1.3 动态Web页的工作原理 4
1.3.1 提供动态Web页内容的两种方法 5
1.3.2 技术概述 7
1.4 什么是ASP.NET 11
1.5 ASP.NET与ASP的区别 12
1.6 ASP、ASP.NET以及VB.NET之间的区别 12
1.7 安装过程 13
1.7.1 安装IIS 5.x Web服务器 13
1.7.2 测试安装 16
1.7.3 管理Web服务器的目录 20
1.7.4 安装ASP.NET的准备工作 27
1.7.5 安装ASP.NET和.NET Framework SDK 28
1.8 ASP.NET测试示例 31
1.9 排除ASP.NET故障 34
1.9.1 没有找到程序、没有显示ASP.NET的结果或浏览器试图下载文件 34
1.9.2 页不能显示:HTTP错误403.2 35
1.9.3 找不到页:HTTP错误403.1 36
1.9.4 脱机时Web页无效 37
1.9.5 得到了一个空页 38
1.9.6 页上显示了消息,但不是时间 38
1.9.7 得到引述服务器错误的错误语句 38
1.9.8 其他问题 39
1.10 小结 39
第2章 ASP.NET页的剖析 40
2.1 什么是.NET 40
2.1.1 .NET的基类 43
2.1.2 ASP.NET的工作原理 45
2.2 .NET Framework、ASP.NET应用实例 54
2.3 小结 60
第3章 窗体、HTML服务器控件 61
3.1 窗体 61
3.2 Web页、HTML窗体及Web窗体 62
3.3 简单的Web理论 63
3.3.1 客户机/服务器 64
3.3.2 HTTP协义 64
3.3.3 ASP.NET在.NET Framework中的位置 68
3.4 HTML窗体 69
3.4.1 <form>标识符 69
3.4.2 嵌入HTML窗体控件 75
3.5 服务器控件简介 79
3.6 小结 106
第4章 在VB.NET中保存信息 107
4.1 什么是变量 108
4.2 简单数据类型 111
4.2.1 数值型 112
4.2.2 文本数据类型 113
4.2.3 其他数据类型 114
4.2.4 命名变量 115
4.2.5 命名约定 116
4.3 运算符 117
4.3.1 赋值运算符 117
4.3.2 算术运算符 118
4.3.3 连接字符串 120
4.3.4 比较字符串变量 122
4.4 常量 122
4.5 结构化数据类型 123
4.6 小结 127
4.7 练习 127
第5章 XML 128
5.1 几个概念 129
5.1.1 标识符与元素 129
5.1.2 属性 129
5.2 标记语言示例 130
5.2.1 SGML 130
5.2.2 HTML 131
5.3 XML是如何产生的 132
5.4 什么是XML 132
5.4.1 数据的革命 137
5.4.2 其他功能 137
5.5 结构良好的与合法的文档 138
5.5.1 结构良好的文档 138
5.5.2 合法的文档 143
5.6 确定XML的样式 145
5.6.1 为什么使用样式表 145
5.6.2 层叠样式表 146
5.6.3 在ASP.NET中使用XML 150
5.7 小结 150
5.8 练习 151
第6章 控制结构与过程编程 153
6.1 控制结构简介 153
6.1.1 分支结构 153
6.1.2 循环结构 154
6.1.3 跳转结构 154
6.1.4 控制结构示例 155
6.2 分支结构详述 156
6.2.1 比较运算符 156
6.2.2 逻辑运算符 157
6.3 If...Then结构 158
6.4 循环结构详述 171
6.4.1 For...Next结构 171
6.4.2 Do While结构 175
6.4.3 Do...Until结构 178
6.4.4 For...Each结构 179
6.5 跳转结构详述 180
6.5.1 模块化 180
6.5.2 子例程 180
6.5.3 函数 183
6.5.4 变量的作用域 189
6.6 小结 194
6.7 练习 195
第7章 事件驱动编程与回送 196
7.1 什么是事件 196
7.2 什么是事件驱动编程 197
7.3 ASP.NET的事件 198
7.4 HTML中的事件 203
7.5 ASP.NET中的服务器控件事件 205
7.6 事件驱动编程与回送 209
7.7 改变在Web上编程的方法 213
7.8 小结 219
7.9 练习 219
第8章 对象入门 221
8.1 组织代码 221
8.2 什么是对象 222
8.2.1 抽象化——给真实世界建立模型 224
8.2.2 封装——黑盒 225
8.3 使用对象 226
8.3.1 对象来自于何处 226
8.3.2 创建对象 229
8.3.3 使用方法和属性 230
8.3.4 利用构造函数初始化对象 238
8.3.5 重载方法 242
8.4 小结 249
8.5 练习 250
第9章 共享成员和类关系 251
9.1 共享成员 251
9.2 类关系 258
9.2.1 关联——“Uses a” 258
9.2.2 包含——“has a” 265
9.2.3 继承——“is a” 269
9.3 小结 276
9.4 练习 277
第10章 ASP.NET中的对象 278
10.1 名称空间 278
10.2 Page类 281
10.3 ASP.NET核心对象 286
10.3.1 Request对象 287
10.3.2 Response对象 291
10.3.3 Server对象 295
10.4 状态处理 302
10.4.1 会话状态 306
10.4.2 cookie 311
10.5 小结 316
10.6 练习 317
第11章 对象和结构化数据 318
11.1 什么是集合 318
11.1.1 不同类型的集合 318
11.1.2 作为集合的数组 320
11.2 更多地利用集合 329
11.2.1 ArrayList 330
11.2.2 Hashtable 334
11.2.3 SortedList 339
11.3 小结 342
11.4 练习 342
第12章 从数据源读取数据 344
12.1 理解现代的数据库 344
12.2 ADO.NET 347
12.2.1 被管理的提供者 348
12.2.2 ADO.NET对象 349
12.2.3 Connection对象 350
12.2.4 Command对象和DataReader 356
12.2.5 DataSet和DataTable对象 364
12.2.6 Microsoft SQL Server和ADO.NET 367
12.3 捕获错误 370
12.4 小结 373
12.5 练习 373
第13章 操纵数据源 375
13.1 处理数据源 375
13.1.1 断开数据 375
13.1.2 更新数据的方法 376
13.1.3 DataSets和DataTables 376
13.1.4 DataRow对象 378
13.1.5 更新初始数据源 385
13.1.6 更新数据——小结 396
13.2 使用SQL 396
13.2.1 DataAdapter命令 396
13.2.2 直接的SQL命令 399
13.2.3 使用SQL——小结 401
13.3 XML 401
13.3.1 转换为字符串的XML 405
13.3.2 转换为DataSet的XML 405
13.4 ADO.NET的相关内容 408
13.5 小结 408
13.6 练习 408
第14章 ASP.NET服务器控件 410
14.1 其他类型的控件 411
14.1.1 HTML服务器控件 411
14.1.2 用户控件 413
14.2 ASP.NET服务器控件 413
14.2.1 多功能对象模型 414
14.2.2 自动探测浏览器 414
14.2.3 属性 414
14.2.4 事件 415
14.3 页生存期 417
14.3.1 Page_Load 418
14.3.2 事件处理 418
14.3.3 Page_Unload 419
14.3.4 控件族 427
14.4 小结 464
第15章 ASP.NET的可复用代码 465
15.1 从对象到组件 465
15.2 组件 466
15.2.1 为什么要使用组件 467
15.2.2 把组件的理论应用到应用程序上 467
15.3 用户控件 468
15.4 后台编码 480
15.5 继承 489
15.6 小结 490
15.7 练习 490
第16章 .NET装配件和定制控件 492
16.1 三层应用程序设计 492
16.2 ASP.NET应用程序设计 493
16.3 .NET装配件 494
16.3.1 什么是编译 495
16.3.2 在ASP.NET页面中访问组件 501
16.3.3 全盘复制部署 505
16.3.4 用其他语言编写代码 505
16.3.5 引入业务对象 509
16.4 定制服务器控件 517
16.5 如何把它们组合在一起 521
16.6 小结 527
16.7 练习 528
第17章 调试和错误处理 529
17.1 几个好的习惯 529
17.1.1 语法错误 530
17.1.2 逻辑错误 532
17.1.3 系统错误 532
17.2 好的编码方式 532
17.3 代码的中断 536
17.4 查找错误 540
17.4.1 错误发生的方式和地点 540
17.4.2 Debug模式 547
17.4.3 跟踪 548
17.5 错误的处理 555
17.5.1 非结构化错误处理 555
17.5.2 结构化错误处理 561
17.5.3 以编程方式处理错误 566
17.6 通知和日志 568
17.6.1 写入事件日志 568
17.6.2 给站点管理员发送邮件 571
17.7 小结 573
第18章 Web服务 574
18.1 什么是Web服务 574
18.2 HTTP、XML和Web服务 577
18.3 建立ASP.NET Web服务 581
18.3.1 处理指令 582
18.3.2 名称空间 582
18.3.3 公共类 582
18.3.4 Web方法 583
18.3.5 测试Web服务 585
18.3.6 使用Web服务 587
18.4 在应用程序中使用Web服务 592
18.5 Web服务发现 595
18.6 Web服务的安全性 596
18.6.1 用户名/密码组合或注册键 596
18.6.2 安全套接字层(SSL) 598
18.6.3 IP地址约束 598
18.7 其他考虑 598
18.7.1 网络连接 599
18.7.2 异步方法调用 599
18.7.3 服务的盗用 599
18.7.4 供应商的偿付能力 600
18.7.5 相互依赖的场合 600
18.8 小结 600
18.9 练习 601
第19章 配置和优化 602
19.1 配置概述 602
19.2 配置文件的结构 606
19.2.1 一般配置 606
19.2.2 页面配置 607
19.2.3 应用程序设置 608
19.2.4 定制错误 608
19.3 性能优化 609
19.3.1 高速缓存 610
19.3.2 跟踪 613
19.4 监视ASP.NET过程 617
19.5 提示和技巧 619
19.6 小结 620
附录A 常用的系统名称空间 621
附录B .NET中语言的语法比较 625
附录C 使用Windows命令行的快速参考 631
附录D HTTP 1.1错误码 638
附录E ASCII字符集 641
附录F 参考资料和更多的信息 648
附录G 支持、勘误表和p2p.wrox.com 651
后记 使用ASP.NET服务器控件有效地显示数据 655