第一篇 ASP.NET开发基础 2
第1章 初识C#、框架和ASP.NET 3.5 2
1.1 认识C# 2
1.1.1 C#与.NET Framework框架 2
1.1.2 一些程序语言的编程模式 3
1.1.3 C#语言的特征 4
1.1.4 .NET Framework简介 4
1.2 何谓ASP.NET 3.5 7
1.2.1 ASP.NET简介 7
1.2.2 ASP.NET 3.5的新特性 7
1.3 Visual Studio 2008简体中文版安装 9
1.3.1 Visual Studio 2008简介 10
1.3.2 Visual Studio 2008的安装 10
1.3.3 Visual Studio 2008安装时注意的问题 12
1.4 Visual Studio 2008集成开发环境介绍 13
1.4.1 主窗口 13
1.4.2 “解决方案资源管理器”窗口 14
1.4.3 “服务器资源管理器”窗口 15
1.4.4 “工具箱”窗口 15
1.4.5 “属性”窗口 16
1.4.6 “错误列表”窗口 17
1.5 配置Visual Studio 2008 17
1.5.1 自定义工具栏 17
1.5.2 “选项”窗口 18
1.5.3 导入和导出设置向导 19
1.6 类设计器 19
1.7 帮助系统 20
1.8 第一个ASP.NET网站 20
1.8.1 创建网站 21
1.8.2 设计网站 22
1.8.3 发布网站 23
1.8.4 运行网站 24
1.9 小结 24
第2章 ASP.NET开发必须具备的Web知识 25
2.1 ASP.NET技术必备的HTML知识 25
2.1.1 什么是HTML 25
2.1.2 超级链接 25
2.1.3 HTML的表单 29
2.1.4 表格table 31
2.1.5 Visual Studio 2008中的HTML编辑器 36
2.2 网页的样式设计CSS 36
2.2.1 什么是CSS 36
2.2.2 CSS的基本语法 37
2.2.3 在网页中插入CSS定义样式表 38
2.2.4 Visual Studio 2008中的CSS编辑器 42
2.3 动态页面必备的JavaScript知识 43
2.3.1 JavaScript实现验证表单 43
2.3.2 JavaScript实现页面跳转 44
2.3.3 JavaScript常用对象介绍 44
2.3.4 Visual Studio 2008中的JavaScript自动提示 46
2.4 ASP.NET必备的XML知识 47
2.4.1 XML的主要特性 47
2.4.2 XML文件结构与基本语法 47
2.4.3 XML的基本语法 48
2.4.4 利用CSS显示XML文件 49
2.4.5 Visual Studio 2008中的XML编辑器 50
2.5 小结 50
第二篇 C#语法基础 52
第3章 C#程序设计基础 52
3.1 变量和常量 52
3.1.1 变量类型 52
3.1.2 引用类型和值类型 53
3.1.3 变量 53
3.1.4 常量 54
3.1.5 var变量 55
3.2 运算符和表达式 56
3.2.1 运算符的分类 56
3.2.2 运算符的优先级 58
3.2.3 表达式 58
3.3 语句结构 58
3.3.1 选择语句 59
3.3.2 多条件选择语句 59
3.3.3 循环语句 60
3.4 数组和集合 60
3.4.1 定义数组 61
3.4.2 遍历数组 61
3.4.3 集合 62
3.4.4 集合初始化器 62
3.5 错误处理 63
3.5.1 用try-catch捕获错误 63
3.5.2 错误处理类Exception 64
3.5.3 错误的调试和跟踪 64
3.6 小结 65
第4章 C#面向对象编程 66
4.1 类和对象 66
4.1.1 什么是类和对象 66
4.1.2 创建类 66
4.1.3 创建对象 67
4.2 类的属性和方法 68
4.2.1 类的属性 68
4.2.2 类的方法 69
4.2.3 方法返回值 69
4.2.4 方法的参数 70
4.3 类的特性 70
4.3.1 继承 70
4.3.2 多态 71
4.3.3 接口 72
4.4 查看类和类关系 73
4.5 小结 74
第三篇 ASP.NET控件技术 76
第5章 基本Web服务器控件 76
5.1 常见的输入和输出 76
5.1.1 使用Label控件显示文本 76
5.1.2 使用TextBox控件实现用户身份验证 77
5.2 使用Button控件动态控制Label控件显示信息 79
5.2.1 Button普通按钮控件 79
5.2.2 LinkButton链接按钮控件 81
5.2.3 ImageButton图像按钮控件 83
5.3 单选按钮和复选框 85
5.3.1 使用RadioButton和RadioButtonList创建多个单选按钮 85
5.3.2 使用CheckBox控件和CheckBoxList控件创建多个复选框 87
5.4 使用FileUpload控件实现文件上传 89
5.5 使用DropDownList控件创建下拉列表框 91
5.6 使用BulletedList控件创建项目列表 93
5.6.1 创建静态项目列表 93
5.6.2 响应用户选择事件 94
5.7 Image控件显示图像 96
5.8 使用AdRotator控件创建广告条 97
5.9 使用Calendar控件实现交互式的日历 98
5.10 小结 100
第6章 数据验证控件 101
6.1 认识内置验证控件 101
6.1.1 内置验证控件概述 101
6.1.2 使用RequiredFieldValidator验证用户是否输入信息 102
6.1.3 使用RegularExpressionValidator验证电子邮件格式 104
6.2 应用CompareValidator进行比较 107
6.2.1 比较一个控件与另一个控件的值 108
6.2.2 比较一个控件的值与固定值 109
6.2.3 执行数据类型检查 110
6.3 其他验证控件 112
6.3.1 用RangeValidator控件限制用户的输入范围 112
6.3.2 用CustomValidator控件验证用户的输入是否为奇数 114
6.3.3 使用ValidationSummary控件对网页进行综合验证 117
6.4 小结 120
第7章 创建用户控件和自定义控件 121
7.1 用户控件 121
7.1.1 用户控件简介 121
7.1.2 利用用户控件实现一个站点计数器 123
7.1.3 创建模板化的ASP.NET用户控件 124
7.1.4 如何将Web窗体页转化为用户控件 125
7.2 自定义控件 126
7.2.1 制作一个简单的自定义控件 126
7.2.2 对自定义控件应用控件公共属性 129
7.2.3 无需编译测试自定义控件 129
7.2.4 将控件编译为程序集 131
7.2.5 剖析控件的状态 132
7.2.6 自定义控件的属性 135
7.3 小结 138
第四篇 构建ASP.NET应用程序 140
第8章 应用程序状态管理 140
8.1 状态管理概述 140
8.1.1 什么是状态管理 140
8.1.2 ASP.NET提供的状态管理方法 140
8.2 Cookie状态管理 141
8.2.1 什么是Cookie 141
8.2.2 ASP.NET中管理Cookie的类 142
8.2.3 应用Cookie实现数据的存储 142
8.3 Session状态管理 144
8.3.1 什么是Session 144
8.3.2 ASP.NET中管理Session的类 144
8.3.3 应用Session实现状态存储 145
8.4 Application状态管理 146
8.4.1 什么是Application 146
8.4.2 ASP.NET中管理Application的类 146
8.4.3 应用Application实现状态存储 147
8.5 ViewState状态管理 147
8.5.1 什么是ViewState 148
8.5.2 应用ViewState存储自定义对象 148
8.6 小结 149
第9章 使用母版页实现网站界面的统一 150
9.1 母版页概述 150
9.1.1 认识母版页 150
9.1.2 创建母版页 150
9.2 母版页和内容页中的事件 151
9.3 母版页的使用 152
9.3.1 在内容页中使用母版页 152
9.3.2 实现内容页和母版页的交互 154
9.3.3 实现母版页的动态切换 155
9.3.4 母版页的嵌套 156
9.4 小结 157
第10章 使用主题和皮肤设置页面外观 158
10.1 主题和皮肤概述 158
10.2 创建主题 158
10.2.1 创建主题的步骤 158
10.2.2 一个完整的皮肤文件代码 159
10.2.3 如何便捷地书写一个皮肤文件 160
10.3 使用主题 160
10.3.1 在主题中使用皮肤 161
10.3.2 创建样式文件 162
10.3.3 多主题的自动切换 163
10.4 小结 166
第11章 网站导航的设计 167
11.1 网站导航的概述 167
11.1.1 ASP.NET中的站点导航功能 167
11.1.2 认识网站的机构布局 167
11.1.3 ASP.NET中的站点导航控件 168
11.1.4 站点导航组件之间的关系 168
11.2 站点地图文件 169
11.2.1 创建站点地图文件 169
11.2.2 一个完整的站点地图 170
11.3 使用导航地图实现网站导航 171
11.3.1 制作导航条 171
11.3.2 实现导航路径 172
11.3.3 制作导航菜单 173
11.4 在母版页中添加导航 174
11.5 以编程方式遍历站点地图 176
11.6 配置多个站点地图 177
11.6.1 在父站点中链接子站点 177
11.6.2 从父站点地图链接到自定义站点地图提供程序 178
11.7 小结 179
第12章 Web服务 180
12.1 Web Service概述 180
12.1.1 为什么需要Web Service 180
12.1.2 什么是Web Service 180
12.1.3 何时需要Web Service 181
12.2 Web Service的体系结构和关键技术 181
12.2.1 Web Service的体系结构 182
12.2.2 Web Service体系结构中的角色 182
12.2.3 Web服务体系结构中的操作 183
12.3 Web Service开发与使用 184
12.3.1 创建并测试Web Service 184
12.3.2 公布Web Service 188
12.3.3 使用Web Service 189
12.4 小结 192
第13章 ASP.NET AJAX无刷新数据处理技术 193
13.1 ASP.NET AJAX概述 193
13.1.1 ASP.NET中AJAX功能 193
13.1.2 ASP.NET中的AJAX功能的结构 194
13.1.3 AJAX客户端结构 194
13.1.4 AJAX服务器结构 195
13.2 创建AJAX应用程序 196
13.2.1 创建AJAX的网页 196
13.2.2 使用Timer控件 198
13.2.3 使用Timer控件创建应用程序 199
13.3 使用Microsoft AJAX Library创建自定义客户端脚本 200
13.3.1 AJAX Library简介 201
13.3.2 使用类型系统 201
13.4 应用AJAX工具包 202
13.4.1 下载并安装AJAX工具包 202
13.4.2 实现文本框水印效果 204
13.5 小结 205
第五篇 数据访问技术 208
第14章 ADO.NET对象 208
14.1 ADO.NET简介 208
14.1.1 ADO.NET的特性 208
14.1.2 ADO.NET 3.5中的对象 208
14.2 用Connection对象创建数据库连接 209
14.3 使用Command对象执行数据库命令 211
14.3.1 查询数据 211
14.3.2 插入数据 213
14.3.3 更新数据 215
14.3.4 返回单个值 217
14.4 Command对象和DataReader对象 218
14.4.1 DataReader对象的常用属性和方法 218
14.4.2 使用DataReader对象读取数据 219
14.5 DataAdapter适配器和DataSet数据集 220
14.5.1 创建DataSet对象 220
14.5.2 向DataSet中添加DataTable 221
14.5.3 将控件绑定到DataSet 221
14.5.4 通过程序创建DataTable 222
14.5.5 缓存DataSet 223
14.5.6 合并DataSet 224
14.5.7 复制DataSet 227
14.6 配置应用程序 229
14.6.1 ASP.NET配置概述 230
14.6.2 在数据库操作中配置web.config文件 230
14.7 小结 231
第15章 使用数据源控件处理数据 232
15.1 访问SQL Server 2005数据库 232
15.1.1 使用SqlDataSource数据源控件 232
15.1.2 参数声明 235
15.2 使用AccessDataSource控件访问Access数据库 238
15.2.1 连接到Access数据库 238
15.2.2 更新Access数据库 240
15.3 使用XMLDataSource控件显示和转换XML数据 241
15.3.1 显示XML数据 242
15.3.2 转换XML数据 243
15.4 使用SiteMapDataSource控件显示站点地图 245
15.5 ObjectDataSource控件 246
15.5.1 实现数据检索并返回对象实例 246
15.5.2 使用参数执行数据更新 249
15.6 访问DBML数据源LinqDataSource数据源控件 252
15.6.1 在ASP.NET中使用LINQ 252
15.6.2 如何在Web应用程序中创建LINQ to SQL类 253
15.7 小结 254
第16章 数据绑定控件显示数据 255
16.1 GridView控件 255
16.1.1 GridView控件的数据绑定方式 255
16.1.2 创建数据库 256
16.1.3 新书登记 256
16.1.4 显示图书信息 261
16.1.5 图书信息排序 263
16.1.6 分页浏览图书 263
16.1.7 修改图书信息 264
16.2 Repeater控件 266
16.2.1 Repeater控件简介 266
16.2.2 使用Repeater控件定制数据的显示样式 267
16.3 DataList控件 271
16.3.1 DataList控件简介 271
16.3.2 使用DataList控件显示数据库中的信息 272
16.4 ListView控件 274
16.4.1 ListView控件简介 274
16.4.2 使用ListView控件定制数据模板 276
16.5 使用FormView控件显示数据 278
16.5.1 将数据绑定到FormView控件 278
16.5.2 数据的编辑、插入和删除 280
16.6 使用ListView和DataPager实现分页数据显示 282
16.7 小结 283
第17章 LINQ开发技术 284
17.1 定义LINQ的作用 284
17.2 核心LINQ程序集 285
17.3 LINQ查询表达式初览 287
17.3.1 创建查询集合的LINQ表达式 287
17.3.2 创建查询DataSet的查询表达式 290
17.3.3 创建SQL Server数据库的查询表达式 291
17.3.4 创建查询XML类型的查询表达式 292
17.4 LINQ查询泛型集合 293
17.4.1 定义LINQ查询 294
17.4.2 重访匿名类型 294
17.5 LINQ查询非泛型集合 295
17.6 查询运算符的内部表示 296
17.6.1 用查询运算符建立查询表达式 297
17.6.2 使用Sequence类型和Lambda表达式来建立查询表达式 298
17.6.3 使用Sequence类型和匿名方法来建立查询表达式 299
17.6.4 使用Sequence类型和原始代码建立查询表达式 299
17.7 研究LINQ查询运算符 300
17.8 构建LINQ查询表达式 301
17.8.1 基本的选择语法 301
17.8.2 获取数据子集 302
17.8.3 逆转结果集的顺序 303
17.8.4 对表达式进行排序 303
17.9 使用LINQ到SQL来查询关系数据库 304
17.9.1 LINQ to SQL概述 305
17.9.2 使用LINQ to SQL可以执行的操作 307
17.9.3 使用Visual Studio2008创建DBML文件 309
17.10 使用SqlMetail.exe生成实体类 310
17.11 使用LINQ to XML操作XML文件 311
17.12 小结 314
第六篇 ASP.NET高级技术 316
第18章 成员和角色的管理 316
18.1 ASP.NET的验证方式 316
18.1.1 Windows身份验证 316
18.1.2 Forms身份验证 316
18.2 用户和角色管理API 317
18.2.1 使用ASP.NET配置工具来管理用户 317
18.2.2 使用CreateUserWizard注册控件来添加用户 320
18.2.3 使用Membership来管理用户 321
18.2.4 使用Roles类管理角色 321
18.3 通过权限管理实现用户登录的案例 322
18.3.1 配置用户数据库 322
18.3.2 用户注册功能 322
18.3.3 用户登录功能 322
18.3.4 在登录页面中添加注册导航功能 323
18.3.5 测试用户的登录 323
18.4 小结 323
第19章 在ASP.NET中整合WCF编程 324
19.1 SOA和WCF 324
19.1.1 什么是SOA思想 324
19.1.2 什么是WCF 325
19.1.3 WCF的体系架构 326
19.1.4 WCF的对外接口 327
19.2 WCF的入门案例 328
19.2.1 创建一个服务 328
19.2.2 客户端调用服务 330
19.3 配置WCF服务 331
19.3.1 服务的地址 331
19.3.2 服务的绑定类型 332
19.3.3 服务的契约 332
19.4 在ASP.NET中应用WCF服务 332
19.4.1 创建ASP.NET普通网站 333
19.4.2 添加WCF服务 333
19.4.3 调用WCF服务 334
19.5 小结 336
第七篇 ASP.NET3.5编程实战 338
第20章 网络硬盘系统 338
20.1 系统分析 338
20.1.1 需求分析 338
20.1.2 系统功能结构 339
20.1.3 构建开发环境 339
20.1.4 系统预览 340
20.2 浏览硬盘 341
20.2.1 树形资源管理器 341
20.2.2 获取当前的目录和文件 346
20.2.3 当前目录的内容列表 348
20.3 目录和文件的管理 352
20.3.1 返回到上一级目录 352
20.3.2 直接返回到根目录 353
20.3.3 刷新网站内容 354
20.3.4 新建目录 355
20.3.5 新建文件 357
20.3.6 删除目录和文件 363
20.3.7 重命名目录和文件 366
20.3.8 编辑文件 367
20.4 网站资源管理 369
20.4.1 将内容压缩为zip 370
20.4.2 将zip内容解压缩 372
20.4.3 文件的剪切、复制和粘贴 374
20.5 文件的上传和下载 378
20.5.1 上传文件 378
20.5.2 下载文件 380
20.6 小结 382
第21章 酒店管理系统 383
21.1 系统分析 383
21.1.1 需求分析 383
21.1.2 系统功能结构 383
21.1.3 构建开发环境 384
21.1.4 系统界面设计 384
21.1.5 系统预览 385
21.2 数据库设计 387
21.2.1 数据库分析 387
21.2.2 数据库表的设计 387
21.2.3 数据库实体E-R图 389
21.2.4 生成数据库实体 389
21.3 员工管理 391
21.3.1 添加员工 391
21.3.2 员工登录 393
21.3.3 员工信息维护 394
21.3.4 员工信息修改 396
21.4 房间类型管理 398
21.4.1 新建房间类型 398
21.4.2 房间类型维护 399
21.4.3 房间类型修改 401
21.5 房间管理 403
21.5.1 新建房间 403
21.5.2 房间信息维护 404
21.5.3 房间信息修改 406
21.6 客户管理 408
21.6.1 浏览空余房间 408
21.6.2 入住 410
21.6.3 浏览已订房间 411
21.6.4 退房 413
21.7 酒店营业情况统计 414
21.8 小结 416
附录 C#快捷键 417