第1篇 起步篇
第1章 ASP.NET 2.0从零起步 3
1.1 熟悉ASP.NET 2.0简介 4
1.1.1 ASP.NET 2.0发展历程 4
1.1.2 ASP.NET 2.0 新特性 4
1.1.3 ASP.NET 2.0的运行原理 4
1.1.4 ASP.NET 2.0的运行机制 5
1.1.5 ASP.NET 2.0的优点 6
1.2 ASP.NET 2.0开发环境的搭建 7
1.2.1 软件和硬件要求 7
1.2.2 安装IIS服务器 7
1.2.3 安装Visual Studio 2005开发工具 10
1.2.4 启动并配置Visual Studio 2005默认环境 13
1.3 熟悉ASP.NET 200开发环境 14
1.3.1 创建ASP.NET 200空网站 14
1.3.2 熟悉ASP.NET 2.0的菜单栏和工具栏 15
1.3.3 设置ASP.NET 2.0开发环境 19
1.4 MSDN帮助系统安装与使用 20
1.4.1 安装MSDN帮助系统 20
1.4.2 使用MSDN帮助系统学习ASP.NET 2.0 22
1.5 本章小结 23
第2章 ASP.NET 2.0开发基础 24
2.1 学习ASP.NET 2.0网页语法 25
2.1.1 ASP.NET网页扩展名 25
2.1.2 什么是页面指令 26
2.1.3 页面指令种类与作用 26
2.1.4 注释ASPX文件中代码 35
2.1.5 如何包含服务器端文件 36
2.1.6 HTML服务器控件语法 36
2.1.7 ASP.NET服务器控件语法 37
2.1.8 网页中代码块语法 38
2.1.9 网页中表达式语法 38
2.2 制作一个ASP.NET网站 39
2.2.1 创建ASP.NET网站 39
2.2.2 设计Web页面 40
2.2.3 添加ASP.NET文件夹 41
2.2.4 添加配置文件Web.config 41
2.2.5 运行应用程序 43
2.2.6 配置IIS虚拟目录 44
2.3 本章小结 46
第3章 C#语言基础 47
3.1 C#简介 48
3.2 数据类型 48
3.2.1 什么是数据类型 48
3.2.2 C#中包含那些数据类型 48
3.2.3 各种数据类型使用及意义 48
3.2.4 什么是装箱和拆箱 48
3.2.5 装箱和拆箱的使用 49
3.3 C#中的变量和常量 49
3.3.1 什么是变量和常量 49
3.3.2 变量的声明和赋值 49
3.3.3 有效声明与使用常量 51
3.4 类型转换 52
3.4.1 隐式类型转换 52
3.4.2 显式类型转换 53
3.5 C#中运算符 53
3.5.1 操作算术运算符 53
3.5.2 操作关系运算符 53
3.5.3 操作赋值运算符 54
3.5.4 操作逻辑运算符 55
3.5.5 操作位运算符 55
3.5.6 操作其他运算符 56
3.5.7 运算符的优先集 56
3.6 字符串处理 57
3.6.1 比较字符串 57
3.6.2 定位字符及子串 57
3.6.3 格式化字符串 57
3.6.4 截取字符串 58
3.6.5 分裂字符串 58
3.6.6 插入和填充字符串 58
3.6.7 删除和剪切字符串 59
3.6.8 复制字符串 59
3.6.9 替换字符串 59
3.7 流程控制 59
3.7.1 有效使用分支语句 59
3.7.2 有效使用循环语句 61
3.7.3 异常处理语句 62
3.8 数组的基本操作 63
3.8.1 数组的声明 63
3.8.2 初始化数组 63
3.8.3 遍历数组 64
3.8.4 增加数组元素 64
3.8.5 读取数组中的当前元素 64
3.8.6 数组的排序 65
3.9 代码编写规范 65
3.9.1 在程序中规范使用注释 65
3.9.2 按照命名规范书写代码 65
3.9.3 统一代码缩进格式 66
3.10 本章小结 66
第1篇 起步篇
第1章 ASP.NET 2.0从零起步 3
1.1 熟悉ASP.NET 2.0简介 4
1.1.1 ASP.NET 2.0发展历程 4
1.1.2 ASP.NET 2.0 新特性 4
1.1.3 ASP.NET 2.0的运行原理 4
1.1.4 ASP.NET 2.0的运行机制 5
1.1.5 ASP.NET 2.0的优点 6
1.2 ASP.NET 2.0开发环境的搭建 7
1.2.1 软件和硬件要求 7
1.2.2 安装IIS服务器 7
1.2.3 安装Visual Studio 2005开发工具 10
1.2.4 启动并配置Visual Studio 2005默认环境 13
1.3 熟悉ASP.NET 200开发环境 14
1.3.1 创建ASP.NET 200空网站 14
1.3.2 熟悉ASP.NET 2.0的菜单栏和工具栏 15
1.3.3 设置ASP.NET 2.0开发环境 19
1.4 MSDN帮助系统安装与使用 20
1.4.1 安装MSDN帮助系统 20
1.4.2 使用MSDN帮助系统学习ASP.NET 2.0 22
1.5 本章小结 23
第2章 ASP.NET 2.0开发基础 24
2.1 学习ASP.NET 2.0网页语法 25
2.1.1 ASP.NET网页扩展名 25
2.1.2 什么是页面指令 26
2.1.3 页面指令种类与作用 26
2.1.4 注释ASPX文件中代码 35
2.1.5 如何包含服务器端文件 36
2.1.6 HTML服务器控件语法 36
2.1.7 ASP.NET服务器控件语法 37
2.1.8 网页中代码块语法 38
2.1.9 网页中表达式语法 38
2.2 制作一个ASP.NET网站 39
2.2.1 创建ASP.NET网站 39
2.2.2 设计Web页面 40
2.2.3 添加ASP.NET文件夹 41
2.2.4 添加配置文件Web.config 41
2.2.5 运行应用程序 43
2.2.6 配置IIS虚拟目录 44
2.3 本章小结 46
第3章 C#语言基础 47
3.1 C#简介 48
3.2 数据类型 48
3.2.1 什么是数据类型 48
3.2.2 C#中包含那些数据类型 48
3.2.3 各种数据类型使用及意义 48
3.2.4 什么是装箱和拆箱 48
3.2.5 装箱和拆箱的使用 49
3.3 C#中的变量和常量 49
3.3.1 什么是变量和常量 49
3.3.2 变量的声明和赋值 49
3.3.3 有效声明与使用常量 51
3.4 类型转换 52
3.4.1 隐式类型转换 52
3.4.2 显式类型转换 53
3.5 C#中运算符 53
3.5.1 操作算术运算符 53
3.5.2 操作关系运算符 53
3.5.3 操作赋值运算符 54
3.5.4 操作逻辑运算符 55
3.5.5 操作位运算符 55
3.5.6 操作其他运算符 56
3.5.7 运算符的优先集 56
3.6 字符串处理 57
3.6.1 比较字符串 57
3.6.2 定位字符及子串 57
3.6.3 格式化字符串 57
3.6.4 截取字符串 58
3.6.5 分裂字符串 58
3.6.6 插入和填充字符串 58
3.6.7 删除和剪切字符串 59
3.6.8 复制字符串 59
3.6.9 替换字符串 59
3.7 流程控制 59
3.7.1 有效使用分支语句 59
3.7.2 有效使用循环语句 61
3.7.3 异常处理语句 62
3.8 数组的基本操作 63
3.8.1 数组的声明 63
3.8.2 初始化数组 63
3.8.3 遍历数组 64
3.8.4 增加数组元素 64
3.8.5 读取数组中的当前元素 64
3.8.6 数组的排序 65
3.9 代码编写规范 65
3.9.1 在程序中规范使用注释 65
3.9.2 按照命名规范书写代码 65
3.9.3 统一代码缩进格式 66
3.10 本章小结 66
第4章 ASP.NET内置对象 67
4.1 Response对象 68
4.1.1 Response对象概述 68
4.1.2 Response对象常用属性、方法介绍 68
4.1.3 Response对象在实际开发中的应用 71
4.2 Request对象 72
4.2.1 Request对象概述 72
4.2.2 Request对象常用属性、方法介绍 72
4.2.3 Request对象在实际开发中的应用 74
4.3 Application对象 75
4.3.1 Application对象概述 76
4.3.2 Application对象常用集合、属性和方法介绍 76
4.3.3 Application对象在实际开发中的应用 80
4.4 Session对象 81
4.4.1 Session对象概述 81
4.4.2 Session对象常用集合、属性和方法介绍 82
4.4.3 Session对象在实际开发中的应用 85
4.5 Cookie对象 86
4.5.1 Cookie对象概述 86
4.5.2 Cookie对象常用属性、方法介绍 87
4.5.3 Cookie对象在实际开发中的应用 89
4.6 Server对象 90
4.6.1 Server对象概述 90
4.6.2 Server对象常用属性、方法介绍 90
4.6.3 Server对象在实际开发中的应用 95
4.7 本章小结 96
第5章 ASP.NET常用开发服务器控件 97
5.1 服务器控件概述 98
5.1.1 服务器控件的概念与作用 98
5.1.2 服务器控件与对象的关系 98
5.1.3 服务器控件的属性、方法和事件 98
5.2 服务器控件的相关操作 101
5.2.1 向页面中添加服务器控件 101
5.2.2 删除页面中服务器控件 101
5.2.3 添加引用服务器控件 102
5.3 Label控件 103
5.3.1 属性 103
5.3.2 方法 104
5.3.3 事件 105
5.3.4 使用Label控件显示文本 106
5.4 TextBox控件 106
5.4.1 属性 106
5.4.2 方法 107
5.4.3 事件 107
5.4.4 TextBox控件的3种显示方式 108
5.5 Image控件 108
5.5.1 属性 108
5.5.2 方法 109
5.5.3 事件 110
5.5.4 使用Image控件显示图片 110
5.6 Button控件 110
5.6.1 属性 110
5.6.2 方法 111
5.6.3 事件 111
5.6.4 使用Button控件改变TextBox控件的文本 112
5.7 LinkButton控件 112
5.7.1 属性 112
5.7.2 方法 113
5.7.3 事件 113
5.7.4 使用LinkButton控件跳转页面 113
5.8 ImageButton控件 114
5.8.1 属性 114
5.8.2 方法 115
5.8.3 事件 115
5.8.4 使用ImageButton控件跳转页面 115
5.9 HyperLink控件 115
5.9.1 属性 115
5.9.2 方法 116
5.9.3 事件 116
5.9.4 使用HypperLink控件跳转页面 116
5.10 RequiredFieldValidator控件 117
5.10.1 属性 117
5.10.2 方法 117
5.10.3 事件 117
5.10.4 使用RequiredFieldValidator控件判断用户名是否为空 118
5.11 RangeValidator控件 118
5.11.1 属性 118
5.11.2 方法 119
5.11.3 事件 119
5.11.4 使用RangeValidator控件判断数量是否在范围内 119
5.12 RegularExpressionValidator控件 119
5.12.1 属性 119
5.12.2 方法 121
5.12.3 事件 121
5.12.4 使用RegularExpressionValidator控件判断邮件地址 121
5.13 CompareValidator控件 121
5.13.1 属性 122
5.13.2 方法 122
5.13.3 事件 122
5.13.4 使用CompareValidator控件判断两次密码是否一致 122
5.14 CustomValidator控件 123
5.14.1 属性 123
5.14.2 方法 123
5.14.3 事件 123
5.14.4 使用CustomValidator控件判断用户名是否存在 124
5.15 ValidationSummary控件 124
5.15.1 属性 125
5.15.2 方法 125
5.15.3 事件 125
5.15.4 使用ValidationSummary控件显示所有验证控件错误信息 125
5.16 Login控件 126
5.16.1 属性 126
5.16.2 方法 127
5.16.3 事件 127
5.16.4 使用Login控件实现用户登录 127
5.17 本章小结 128
第2篇 提高篇
第6章 面向对象的程序设计 131
6.1 概述 132
6.1.1 面向对象的概念 132
6.1.2 面向对象语言的特点 132
6.2 类和对象 133
6.2.1 类的概念 133
6.2.2 声明类 133
6.2.3 对象 133
6.2.4 对象的声明和实例化 134
6.2.5 类与对象的关系 135
6.2.6 构造函数 135
6.2.7 析构函数 135
6.2.8 属性和方法 136
6.2.9 有效使用static修饰符 137
6.3 使用访问修饰符关键字控制访问权限 138
6.4 类的继承 139
6.4.1 继承的概念 139
6.4.2 实现继承的方法 139
6.5 接口 140
6.5.1 接口的概念 140
6.5.2 定义接口 140
6.5.3 接口的成员 140
6.5.4 接口的实现 141
6.6 本章小结 141
第7章 使用ADO.NET技术进行数据库开发 142
7.1 了解ADO.NET技术 143
7.1.1 ADO.NET概述 143
7.1.2 .NET数据提供程序 143
7.2 创建数据库连接 144
7.2.1 Connection对象概述 144
7.2.2 Connection对象的属性及方法 145
7.2.3 数据库连接字符串 146
7.2.4 打开和关闭数据库连接 147
7.3 执行数据库命令 148
7.3.1 Command对象概述 148
7.3.2 Command对象的属性及方法 148
7.3.3 创建和执行Command对象的实例 150
7.4 使用DataReader对象读取数据 154
7.4.1 DataReader对象概述 154
7.4.2 DataReader对象的属性及方法 154
7.4.3 创建和使用DataReader对象 156
7.5 使用DataSet和DataAdapter查询数据 161
7.5.1 DataSet 对象 161
7.5.2 DataSet数据更新 162
7.5.3 使用DataAdapter对象 162
7.6 本章小结 163
第8章 数据控件 164
8.1 GridView控件 165
8.1.1 GridView控件概述 165
8.1.2 GridView控件常用的属性、方法和事件 165
8.1.3 使用GridView控件绑定数据源 168
8.1.4 设置GridView控件的外观 170
8.1.5 制定GridView控件的列 171
8.1.6 查看GridView控件中数据的详细信息 172
8.1.7 使用GridView控件分页显示数据 174
8.1.8 在GridView控件中排序数据 174
8.1.9 在GridView控件中实现全选和全不选功能 175
8.1.10 在GridView控件中对数据进行编辑操作 176
8.1.11 实际开发中特殊样式的实现 178
8.2 DataList控件 179
8.2.1 DataList控件概述 179
8.2.2 DataList控件常用的属性、方法和事件 179
8.2.3 使用DataList控件绑定数据源 182
8.2.4 分页显示DataList控件中的数据 184
8.2.5 查看DataList控件中数据的详细信息 185
8.2.6 在DataList控件中对数据进行编辑操作 187
8.2.7 获取DataList控件中控件数据的方法 188
8.2.8 为DataList控件添加自动编号的功能 188
8.2.9 在DataList控件中创建多个列 189
8.3 数据绑定 190
8.3.1 数据绑定的概述 190
8.3.2 简单属性绑定 190
8.3.3 表达式绑定 191
8.3.4 集合绑定 192
8.3.5 方法调用的结果 192
8.4 本章小结 193
第9章 Web用户控件 194
9.1 Web用户控件的概述 195
9.1.1 用户控件与普通的Web页比较 195
9.1.2 用户控件的优点 195
9.2 创建及使用Web用户控件 195
9.2.1 创建Web用户控件 196
9.2.2 将Web用户控件添加至网页 197
9.2.3 在用户控件中添加用户控件 197
9.2.4 使用Web用户控件制作博客导航条 199
9.3 设置用户控件 201
9.3.1 访问用户控件的属性 201
9.3.2 访问用户控件中的服务器控件 202
9.3.3 将Web网页转化为用户控件 203
9.4 本章小结 205
第10章 母版页 206
10.1 母版页概述 207
10.1.1 母版页 207
10.1.2 内容页 208
10.1.3 母版页运行机制 208
10.1.4 母版页和内容页事件顺序 209
10.1.5 母版页的优点 210
10.2 创建母版页 210
10.3 创建内容页 213
10.4 母版页的使用 215
10.4.1 简单母版页的应用 215
10.4.2 嵌套母版页的应用 216
10.4.3 访问复杂母版页 218
10.4.4 使用@MasterType指令获取母版中控件引用 219
10.5 本章小结 221
第11章 主题 222
11.1 主题的概述 223
11.1.1 组成元素 224
11.1.2 文件存储和组织方式 225
11.2 创建主题 225
11.2.1 创建外观文件 225
11.2.2 为主题添加CSS样式 228
11.2.3 主题中应用图片 230
11.3 应用主题 231
11.3.1 指定和禁用主题 231
11.3.2 动态加载主题 235
11.4 本章小结 236
第12章 站点导航控件 237
12.1 站点地图概述 238
12.2 TreeView控件 239
12.2.1 TreeView控件概述 239
12.2.2 TreeView控件常用的属性和事件 240
12.2.3 TreeView控件的基本应用 243
12.2.4 TreeView控件绑定数据库 244
12.2.5 TreeView控件绑定XML文件 246
12.3 Menu控件 250
12.3.1 Menu控件概述 250
12.3.2 Menu控件常用的属性和事件 250
12.3.3 Menu控件的基本应用 252
12.3.4 Menu控件绑定XML文件 253
12.4 SiteMapPath控件 256
12.4.1 SiteMapPath控件概述 256
12.4.2 SiteMapPath控件常用的属性和事件 256
12.4.3 应用SiteMapPath控件实现站点导航 257
12.5 本章小结 260
第13章 调试与错误处理 261
13.1 错误类型 262
13.1.1 语法错误 262
13.1.2 语义错误 262
13.1.3 逻辑错误 263
13.2 程序调试 263
13.2.1 调试工具栏 263
13.2.2 断点 264
13.2.3 开始执行 266
13.2.4 中断执行 266
13.2.5 停止执行 267
13.2.6 单步执行 267
13.2.7 运行到指定位置 268
13.3 错误处理 268
13.3.1 服务器故障排除 268
13.3.2 ASP.NET中的异常处理 269
13.4 本章小结 274
第3篇 实例篇
第14章 网站会员注册与登录 277
14.1 设计思路 278
14.1.1 功能概述 278
14.1.2 程序业务流程图 278
14.1.3 数据库设计 279
14.1.4 文件组织结构 279
14.2 会员注册 280
14.2.1 实现关键技术 280
14.2.2 功能实现 281
14.3 会员登录 284
14.3.1 实现关键技术 284
14.3.2 功能实现 285
14.4 本章小结 287
第15章 文件上传与下载 288
15.1 设计思路 289
15.1.1 功能概述 289
15.1.2 程序业务流程图 289
15.1.3 文件组织结构 289
15.2 文件上传 290
15.2.1 实现关键技术 290
15.2.2 功能实现 290
15.3 文件下载 293
15.3.1 实现关键技术 293
15.3.2 功能实现 294
15.4 本章小结 296
第16章 电子邮件发送和接收 297
16.1 设计思路 298
16.1.1 功能概述 298
16.1.2 程序业务流程图 298
16.1.3 Jmail组件介绍 298
16.1.4 文件组织结构 301
16.2 发送邮件 302
16.2.1 实现关键技术 302
16.2.2 功能实现 303
16.3 接收邮件 305
16.3.1 实现关键技术 305
16.3.2 功能实现 305
16.4 本章小结 309
第17章 留言本 310
17.1 设计思路 311
17.1.1 功能概述 311
17.1.2 程序业务流程图 311
17.1.3 数据库设计 312
17.2 公共类设计 313
17.2.1 配置Web.Config 313
17.2.2 SqlData类 313
17.3 首页功能设计 316
17.3.1 实现关键技术 316
17.3.2 功能实现 317
17.4 发表留言模块功能设计 318
17.4.1 实现关键技术 318
17.4.2 功能实现 319
17.5 留言信息查看页面功能设计 320
17.5.1 实现关键技术 320
17.5.2 功能实现 323
17.6 留言信息管理功能设计 326
17.6.1 实现关键技术 326
17.6.2 功能实现 326
17.7 回复留言功能设计 328
17.7.1 实现的关键技术 328
17.7.2 功能实现 328
17.8 本章小结 330
第18章 网上在线聊天室 331
18.1 实例说明 332
18.2 分析与设计 332
18.3 技术要点 333
18.3.1 框架的应用 333
18.3.2 Session对象的应用 335
18.3.3 JavaScript脚本的应用 336
18.4 开发过程 336
18.4.1 数据库设计 336
18.4.2 公共类编写 337
18.4.3 设计分析 339
18.5 本章小结 350
第19章 BBS论坛 351
19.1 设计思路 352
19.1.1 功能概述 352
19.1.2 业务流程分析 353
19.1.3 数据库设计 354
19.2 公共类设计 356
19.2.1 数据库操作类设计 357
19.2.2 版块管理功能模块类 361
19.2.3 配置Web.Config 364
19.3 主要功能界面的实现 364
19.3.1 浏览帖子页面的实现过程 364
19.3.2 回复帖子页面的实现过程 370
19.3.3 发表帖子页面的实现过程 374
19.4 本章小结 376
第20章 网络在线投票 377
20.1 设计思路 378
20.1.1 功能概述 378
20.1.2 程序业务流程图 378
20.1.3 数据库设计 379
20.1.4 文件组织结构 379
20.2 公共类设计 380
20.2.1 配置Web.Config 380
20.2.2 数据库连接类 380
20.2.3 对话框类设计 383
20.3 投票项目添加设计 384
20.3.1 实现关键技术 384
20.3.2 功能实现 384
20.4 主页显示投票标题 386
20.4.1 实现关键技术 386
20.4.2 功能实现 387
20.5 投票功能设计 388
20.5.1 实现关键技术 388
20.5.2 功能实现 389
20.6 投票结果显示 391
20.6.1 关键技术 391
20.6.2 功能实现 391
20.7 本章小结 393
第21章 新闻发布系统 394
21.1 概述 395
21.2 系统分析 395
21.2.1 需求分析 395
21.2.2 可行性分析 395
21.3 系统总体设计 395
21.3.1 项目规划 395
21.3.2 系统功能结构图 396
21.4 系统设计 396
21.4.1 设计目标 396
21.4.2 逻辑结构设计 397
21.5 开发技术要点 398
21.5.1 站内全面搜索 399
21.5.2 代码封装技术 399
21.5.3 使用DataList控件绑定数据并实现分页 400
21.5.4 向页面中添加CSS样式 401
21.5.5 使用FrameSet框架布局页面 401
21.5.6 转化GridView控件中绑定数据的格式 402
21.6 公共类的编写 402
21.6.1 数据库操作类的编写 402
21.6.2 Web.Config文件配置 406
21.7 后台新闻管理模块设计 407
21.7.1 后台登录模块设计 407
21.7.2 新闻添加功能模块设计 408
21.7.3 新闻搜索和删除功能模块设计 411
21.7.4 新闻编辑功能模块设计 415
21.8 前台主要功能模块设计 417
21.8.1 用户自定义控件设计 417
21.8.2 站内搜索显示结果页 419
21.8.3 新闻类别页 421
21.9 本章小结 425
第22章 电子商城 426
22.1 概述 427
22.2 系统分析 427
22.2.1 需求分析 427
22.2.2 可行性分析 427
22.3 系统总体设计 428
22.3.1 项目规划 428
22.3.2 系统功能结构图 428
22.4 系统设计 428
22.4.1 设计目标 428
22.4.2 逻辑结构设计 429
22.5 公共类的编写 432
22.5.1 Web.Config文件配置 432
22.5.2 数据库操作类的编写 432
22.6 网站前台主要功能模块设计 435
22.6.1 网站前台首页设计 435
22.6.2 推荐商品模块设计 436
22.6.3 购物车模块设计 438
22.6.4 会员注册模块设计 441
22.7 网站后台主要功能模块设计 444
22.7.1 后台登录模块设计 444
22.7.2 商品管理模块设计 446
22.8 疑难问题分析 451
22.8.1 如何防止SQL注入式攻击 451
22.8.2 如何实现网上购物 452
22.9 本章小结 453