第1章 ASP.NET 2.0开发基础 1
1.1 ASP.NET 2.0概述 1
1.1.1 ASP.NET 2.0新增控件 1
1.1.2 ASP.NET 2.0 Web页面框架 2
1.1.3 ASP.NET 2.0服务与APIs 3
1.2 搭建ASP.NET 2.0开发环境 4
1.2.1 安装Microsoft Visual Studio 2005 4
1.2.2 安装Microsoft SQL Server 2005 6
1.2.3 配置集成开发环境 11
1.2.4 导入和导出Visual Studio 2005的设置 13
1.2.5 安装和配置IIS 14
1.3 创建第一个ASP.NET 2.0 Web应用程序 17
1.3.1 创建ASP.NET Web应用程序Sample 01 02 17
1.3.2 Visual Studio 2005新特征 18
1.3.3 使用Visual Studio 2005中的辅助面板 20
1.3.4 设计Web页面 21
1.3.5 编写Web页面的HTML代码 22
1.3.6 编写Web页面的隐藏代码 23
1.3.7 引入资源文件夹 23
1.3.8 配置应用程序 24
1.3.9 管理应用程序和解决方案 25
1.3.10 运行应用程序 29
第2章 C#编程基础 30
2.1 C#概述 30
2.2 类型 31
2.2.1 基类型 31
2.2.2 值类型和引用类型 33
2.2.3 装箱和拆箱 35
2.3 变量及其转换 36
2.3.1 静态变量与局部变量 36
2.3.2 值参数 38
2.3.3 ref参数和out参数 39
2.3.4 变量转换 40
2.3.5 变量赋值 42
2.4 运算符、表达式、语句和命名空间 44
2.4.1 使用运算符 44
2.4.2 重载运算符 46
2.4.3 转换运算符 48
2.4.4 选择语句 49
2.4.5 迭代语句 50
2.4.6 使用using指令和using语句 52
2.4.7 .NET Framework 2.0命名空间 54
2.5 类和结构 56
2.5.1 定义类和结构 57
2.5.2 静态构造函数 58
2.5.3 定义属性和索引器 59
2.5.4 定义方法、事件和方法重载 60
2.5.5 定义接口 67
2.6 集合编程 69
2.6.1 数组、ArrayList和多维数组 69
2.6.2 枚举与位标记 72
2.6.3 枚举与其他类型的转换 75
2.6.4 使用双堆栈创建队列 78
2.6.5 创建循环队列 81
2.6.6 遍历哈希表并排序 84
2.6.7 创建和遍历字典 85
2.7 委托和事件 88
2.7.1 声明委托和事件 88
2.7.2 注册和移除事件 90
2.7.3 使用委托链调用多个事件 92
2.8 高级技术 94
2.8.1 使用异常机制 94
2.8.2 使用反射编程 96
2.8.3 创建和使用泛型 98
2.8.4 使用匿名方法 100
2.8.5 使用可空类型 102
2.8.6 使用迭代器 103
第3章 ASP.NET 2.0常用服务器端控件 105
3.1 使用基本控件 107
3.1.1 在页面上显示数据 107
3.1.2 在页面上输入数据 111
3.1.3 创建按钮类型控件的事件 113
3.1.4 使用列表类型控件显示数据 117
3.1.5 使用选择类型控件进行单选和多选操作 122
3.2 使用验证控件 125
3.2.1 非空验证 126
3.2.2 范围验证 127
3.2.3 使用正则表达式验证电子邮件 128
3.2.4 验证两个控件输入值是否相同 129
3.2.5 使用自定义函数的验证 130
3.2.6 页面统一验证 132
3.3 ASP.NET 2.0新增控件 134
3.3.1 使用BulletedList控件实现项目符合和编号 134
3.3.2 使用View控件创建选项卡及其容器 137
3.3.3 使用Wizard控件创建页面向导 139
3.3.4 上传图片并生成缩略图 142
3.3.5 使用页面的隐藏字段 146
3.3.6 使用Substitution控件实现网页部分缓存 147
3.4 其他控件 148
3.4.1 使用日历控件输入日期 148
3.4.2 使用AdRotator控件显示页面广告 151
3.4.3 使用Xml控件显示XML文件 153
第4章 ASP.NET 2.0对象、状态和配置 155
4.1 Response对象和Request对象 155
4.1.1 获取Response对象的信息并输出 155
4.1.2 输出Response对象的属性的值 157
4.1.3 使用Response对象输出图片 159
4.1.4 使用Response对象重定向页面 162
4.1.5 使用Response对象的缓存策略 163
4.1.6 使用Response对象的过滤器 164
4.1.7 获取Request对象的信息 165
4.1.8 获取Request对象的URL、虚拟路径和物理路径 168
4.1.9 使用Request对象传递和接收页面参数 168
4.1.10 使用SaveAs()方法保存当前请求到硬盘上 171
4.2 HTTP请求上下文 171
4.2.1 使用应用程序的HttpApplication实例 172
4.2.2 应用程序状态 174
4.2.3 获取应用程序模块信息 177
4.2.4 HttpApplication类的事件 178
4.2.5 获取应用程序的上下文信息 182
4.2.6 获取Server对象的信息 183
4.2.7 使用Server对象获取物理路径 185
4.2.8 使用Server对象的编码机制 185
4.2.9 使用Execute()和Transfer()方法重定向页面 187
4.2.10 Global.asax文件 188
4.2.11 HTTP运行时信息 190
4.3 状态管理 191
4.3.1 使用Application对象保存数据 192
4.3.2 使用Session对象保存数据 194
4.3.3 使用Session Start和Session End事件统计在线人数 196
4.3.4 使用Cookie保存数据 197
4.3.5 禁用Cookie时的HTTP头信息 198
4.3.6 使用ViewState对象保存页面状态 200
4.3.7 ViewState的高级话题 201
4.4 配置ASP.NET应用程序 203
4.4.1 Web.config文件概述 203
4.4.2 配置数据库链接字符串 205
4.4.3 读取配置文件 205
4.4.4 写入配置文件 208
4.4.5 添加自定义配置节 209
4.4.6 加密配置文件 211
4.4.7 ASP.NET配置工具 214
4.4.8 ASP.NET MMC管理单元 217
第5章 SQL Server 2005常用操作 220
5.1 SQL Server 2005概述 220
5.1.1 连接服务器 221
5.1.2 SQL Server配置管理器 223
5.1.3 SQL Server外围应用配置器 225
5.1.4 SQL Server错误和使用情况报告 226
5.1.5 Reporting Services配置 227
5.1.6 SQL Server Profiler 230
5.1.7 数据库引擎优化顾问 232
5.2 管理数据库的基本对象 234
5.2.1 创建数据库 236
5.2.2 备份数据库 238
5.2.3 还原数据库 240
5.2.4 分离数据库和附加数据库 241
5.2.5 删除数据库 243
5.2.6 创建和修改表 244
5.2.7 删除表 245
5.2.8 创建视图 246
5.3 SQL语句 247
5.3.1 获取指定条件的记录 247
5.3.2 获取指定数量的记录 248
5.3.3 对记录进行排序 248
5.3.4 模糊查询 248
5.3.5 嵌套查询 249
5.3.6 对数据进行分组统计 249
5.3.7 插入一条记录 250
5.3.8 插入不重复的记录 250
5.3.9 插入记录并返回ID 251
5.3.10 同时更新多条记录 251
5.3.11 删除记录 252
5.4 存储过程 252
5.4.1 SELECT型存储过程 253
5.4.2 INSERT型存储过程 254
5.4.3 UPDATE型存储过程 254
5.4.4 DELETE型存储过程 254
5.4.5 存储过程与参数、返回值 255
5.5 SQL Server 2005和Visual Studio 2005 257
5.5.1 连接SQL Server 2005数据库 257
5.5.2 在Visual Studio 2005中创建SQL Server工程 260
第6章 获取数据、绑定数据和操作数据 262
6.1 ADO.NET的基本对象及其操作 263
6.1.1 使用SqlCommand对象和SqlDataReader对象读取数据 264
6.1.2 使用SqlDataAdapter对象填充数据集 268
6.1.3 动态创建DataTable对象 271
6.1.4 使用DataView过滤数据 274
6.1.5 使用ExecuteNonQuery()操作数据库 278
6.1.6 使用ExecuteScalar()读取数据 281
6.1.7 使用ExecuteXMLReader()读取XML片断 282
6.1.8 复制大块数据 286
6.2 数据绑定 287
6.2.1 简单数据绑定 288
6.2.2 复杂绑定数据 288
6.2.3 Bind()方法和Eval()方法 291
6.3 数据源控件 292
6.3.1 访问SQL Server数据库控件SqlDataSource 293
6.3.2 访问Access数据源控件AccessDataSource 298
6.3.3 访问对象数据源控件ObjectDataSource 299
6.3.4 访问XML数据源控件XmlDataSource 303
6.3.5 访问站点地图数据源控件SiteMapDataSource 305
6.4 GridView控件 307
6.4.1 GridView控件概述 307
6.4.2 控件的列 310
6.4.3 使用模板列 313
6.4.4 自动编辑 317
6.4.5 分页机制 320
6.4.6 排序机制 322
6.4.7 GridView的事件 324
6.5 其他数据控件 329
6.5.1 使用Repeater控件显示数据 329
6.5.2 使用数据列表控件显示数据 330
6.5.3 使用DetailsView控件操作一条记录 332
6.5.4 使用FormView控件更新和插入数据 336
第7章 导航与登录 343
7.1 站点导航 343
7.1.1 创建页面的菜单 343
7.1.2 创建站点地图,并启用导航 346
7.1.3 修改内存中的站点地图信息 347
7.1.4 使用TreeView控件显示树型数据 348
7.2 站点登录 351
7.2.1 用户登录,并使用LoginView控件显示提示信息 351
7.2.2 获取用户名称及其状态 353
7.2.3 创建新用户 354
7.2.4 修改密码 355
7.2.5 找回密码 355
7.2.6 显示所有用户 358
第8章 母版页和站点主题 359
8.1 使用母版页 359
8.1.1 ASP.NET母版页概述 359
8.1.2 创建母版页 360
8.1.3 使用母版页 362
8.1.4 母版页的加载顺序 365
8.1.5 使用用户控件的母版页的加载顺序 368
8.2 统一站点主题 373
8.2.1 ASP.NET主题概述 373
8.2.2 创建主题文件夹、主题和样式 374
8.2.3 应用主题和样式 375
8.2.4 动态加载主题 376
第9章 Web部件 379
9.1 Web部件概述 379
9.2 Web部件控件的管理及其区域 383
9.2.1 管理页面的所有Web部件 384
9.2.2 拖动页面中的控件 387
9.2.3 Web部件的区域 387
9.3 管理Web部件的目录 388
9.3.1 使用PageCatalogPart控件显示关闭的Web部件 388
9.3.2 使用DeclarativeCatalogPart控件声明一个Web部件 391
9.3.3 使用ImportCatalogPart控件导入Web部件 391
9.3.4 导出Web部件 395
9.4 编辑Web部件 396
9.4.1 编辑Web部件的布局和外观 396
9.4.2 编辑Web部件的行为 397
9.4.3 编辑Web部件的属性单元格 399
9.5 连接Web部件 400
9.6 创建自定义的Web部件 404
第10章 高级数据处理 407
10.1 文件处理 407
10.1.1 访问目录和文件 407
10.1.2 写入文件 411
10.1.3 使用FileUpload控件同时上载多个文件 412
10.1.4 下载文件 416
10.2 数据缓存 417
10.2.1 Application缓存数据 417
10.2.2 Session缓存数据 419
10.2.3 Cache缓存数据 420
10.2.4 缓存依赖 425
10.2.5 页面片断缓存 427
10.2.6 页面输出缓存 428
10.3 XML 429
10.3.1 读取XML文件 430
10.3.2 写入XML文件 432
10.3.3 创建XML文件 434
10.3.4 使用XML数据填充DataSet 436
10.4 注册表 437
10.4.1 读取注册表 439
10.4.2 写入注册表 441
第11章 用户控件和自定义控件 444
11.1 TabControl用户控件 444
11.1.1 UserControl类 444
11.1.2 创建TabControl用户控件 445
11.1.3 构建用户控件的属性 446
11.1.4 构建用户控件的事件 449
11.1.5 构建用户控件的方法并初始化 450
11.1.6 注册和使用用户控件 452
11.2 BarChartList自定义控件 454
11.2.1 Control类和WebControl类 455
11.2.2 创建BarChart控件 457
11.2.3 构建BarChart控件的属性 457
11.2.4 输出BarChart控件 458
11.2.5 注册并使用BarChart控件 459
11.2.6 创建BarChartList控件 460
11.2.7 构建BarChartList控件的属性 460
11.2.8 绑定BarChartList控件的数据 461
11.2.9 输出BarChartList控件 462
11.2.10 注册并使用BarChartList控件 462
第12章 ASP.NET AJAX 464
12.1 ASP.NET AJAX概述 464
12.2 安装ASP.NET AJAX 465
12.3 使用ASP.NET AJAX控件开发无刷新Web应用程序 466
12.3.1 脚本管理控件ScriptManager 466
12.3.2 提供无刷新环境的UpdatePanel控件 468
12.3.3 自动绑定列表控件的数据 470
12.3.4 GridView控件实现无刷新数据操作 472
12.3.5 无刷新检查用户名称是否存在 474
12.3.6 使用Timer控件进行计数 477
12.3.7 使用UpdateProgress控件实现加载进度条 478
12.3.8 自动上载文档 480
12.3.9 UpdatePanel控件和用户控件 482
12.3.10 UpdatePanel控件和Web Service 487
12.4 ASP.NET AJAX与脚本 490
12.4.1 弹出ASP.NET AJAX环境中的对话框 491
12.4.2 动态引入脚本到页面中 493
12.4.3 动态调用脚本的Web服务 494
12.4.4 使用脚本实现日期格式自动全球化 496
12.5 ASP.NET AJAX的无刷新聊天室 497
12.5.1 基于ASP.NET AJAX的无刷新聊天室基本原理和功能 498
12.5.2 数据库设计 498
12.5.3 配置文件Web.config 499
12.5.4 登录聊天室页面 499
12.5.5 选择聊天室页面 502
12.5.6 聊天室主页面 505
第13章 办公自动化平台 511
13.1 系统功能模块设计 511
13.1.1 功能模块设计 511
13.1.2 功能模块关系设计 512
13.2 数据库设计 513
13.2.1 表设计 513
13.2.2 关系设计 515
13.3 办公自动化平台的解决方案OfficePlatform 516
13.3.1 应用程序OfficePlatform 516
13.3.2 数据库操作模块SqlHelper 517
13.3.3 操作数据库的DataCommon类 517
13.3.4 配置文件Web.config 520
13.4 系统通用功能设计 520
13.4.1 设计主题 520
13.4.2 设计常用枚举 522
13.4.3 设计常用提示信息 523
13.4.4 设计常用操作和方法 523
13.4.5 封装员工信息 526
13.4.6 标题用户控件 529
13.4.7 日历用户控件 530
13.4.8 设计错误处理页面 533
13.5 办公自动化平台主页面 534
13.5.1 员工登录 535
13.5.2 员工操作树 536
13.5.3 操作主页面 537
13.6 部门及其员工管理 539
13.6.1 部门管理 541
13.6.2 添加新部门 544
13.6.3 修改部门信息 546
13.6.4 基于部门的员工管理 549
13.6.5 添加新员工 553
13.6.6 修改员工信息 557
13.6.7 员工修改密码 560
13.6.8 退出平台 563
13.7 员工考勤 563
13.7.1 上班和下班考勤 566
13.7.2 查看基于月份的考勤信息 568
13.7.3 添加未考勤解释说明 574
13.7.4 修改未考勤解释说明 576
13.8 员工的网络存储 579
13.8.1 员工查看网络存储 581
13.8.2 添加存储文件夹 585
13.8.3 修改存储文件夹 587
13.8.4 删除存储文件夹 589
13.8.5 移动存储文件夹 590
13.8.6 上载文档 591
13.8.7 修改文档属性 594
13.9 员工的短信息 597
13.9.1 管理短信息 598
13.9.2 管理短信息的状态 602
13.9.3 阅读短信息 603
13.9.4 发送短信息 605
第14章 项目内容管理平台 609
14.1 系统功能模块设计 609
14.1.1 功能模块设计 609
14.1.2 功能模块关系设计 610
14.2 数据库设计 611
14.2.1 表设计 611
14.2.2 关系设计 614
14.3 项目内容管理平台的解决方案CMS 615
14.3.1 应用程序CMS 615
14.3.2 数据库操作工程SQLHelper 616
14.3.3 配置文件Web.config 628
14.4 系统通用功能设计 629
14.4.1 自定义异常处理 629
14.4.2 处理危险字符 629
14.4.3 数据转换 630
14.4.4 缓存数据 631
14.4.5 记录操作日志 631
14.4.6 系统主题设计 632
14.4.7 系统常用枚举 633
14.4.8 系统常用常量 634
14.4.9 系统常用操作和方法 635
14.4.10 系统初始化操作 638
14.4.11 页面头模块 639
14.4.12 页面尾模块 641
14.4.13 系统错误处理页面 642
14.5 用户、角色和登录 643
14.5.1 注册新用户 644
14.5.2 添加新用户 646
14.5.3 用户管理 649
14.5.4 角色管理 652
14.5.5 添加新角色 655
14.5.6 修改角色 657
14.5.7 用户登录 660
14.5.8 注销用户登录 662
14.5.9 设置角色权限 662
14.5.10 设置用户角色 663
14.6 频道和内容管理 666
14.6.1 频道管理 668
14.6.2 增加新频道 672
14.6.3 修改频道信息及其链接地址 675
14.6.4 频道导航树 678
14.6.5 内容管理主页面 679
14.6.6 添加新内容 684
14.6.7 修改内容 693
14.7 新闻、建议、公告栏、项目计划管理 701
14.7.1 建议管理 701
14.7.2 新闻管理和公告栏管理 705
14.7.3 项目计划安排 705
14.7.4 添加通用信息 707
14.7.5 修改通用信息 715
14.8 后台管理及系统配置 716
14.8.1 后台操作导航树 716
14.8.2 后台管理平台 717
14.8.3 系统配置 718
14.9 项目内容前台Portal 721
14.9.1 首页Default.aspx 722
14.9.2 按层次显示频道信息 726
14.9.3 按频道显示内容 732
14.9.4 自定义项目计划日历控件 738
14.9.5 查看项目计划 742
14.9.6 项目内容搜索 743
14.9.7 站点地图 748
14.10 部署与安装 750
附录 常见问题解答 751