第1章 认识ASP.NET 1
1.1 什么是.NET 1
1.1.1 从用户代码到机器代码 3
1.1.2 两种中间语言介绍 3
1.2 什么是ASP.NET 4
1.3 什么是Web窗体 4
1.4 创建第一个Web应用程序 5
1.4.1 创建项目和窗体 5
1.4.2 检查Web窗体结构 6
1.4.3 添加控件和文本 7
1.4.4 创建事件处理程序 11
1.4.5 生成并运行Web窗体页 11
1.4.6 ASP.NET网页的回发和往返行程 19
第2章 HTML服务器控件 20
2.1 HTML服务器控件共有的属性 20
2.2 按钮、标签和文本框 22
2.2.1 按钮 22
2.2.2 标签 22
2.2.3 文本框和密码框 22
2.3 单选按钮、复选框和面板控件 24
2.3.1 单选按钮 24
2.3.2 复选框 25
2.3.3 面板控件 25
2.4 下拉列表框、列表框和图像控件 28
2.4.1 下拉列表框和列表框 28
2.4.2 图像控件 29
第3章 使用ADO.NET访问数据库 32
3.1 Connection和Command对象 32
3.1.1 Connection对象 33
3.1.2 RadioButton控件的常用属性和事件 38
3.2 Command对象 38
3.2.1 使用Command对象直接执行数据库操作 38
3.2.2 TextBox服务器控件 42
3.3 使用ADO.NET SqlDataReader 42
3.3.1 使用SqlDataReader装载列表框 43
3.3.2 使用数据表的记录创建ListItem对象 46
3.3.3 使用参数化查询 49
3.3.4 装载下拉列表框 51
3.3.5 在下拉列表框中查找值 53
3.3.6 列表控件(列表框、组合框)的常用属性和事件 55
3.3.7 修改数据 56
3.4 使用DataAdapter、DataTable和DataSets 58
3.4.1 DataTable对象 58
3.4.2 数据集和数据适配器 61
3.5 修改数据 68
3.5.1 使用数据集向数据库表中添加一行 68
3.5.2 修改数据集中表中的行 71
3.5.3 在数据集中删除行 74
第4章 Web窗体数据绑定 77
4.1 数据绑定概述和语法 77
4.1.1 Web窗体页的多记录数据绑定 78
4.1.2 单值数据绑定 79
4.1.3 在设计时绑定与在运行时绑定 79
4.1.4 控件属性的数据绑定表达式 79
4.2 控件绑定简单属性 80
4.2.1 在设计时控件绑定简单属性 80
4.2.2 在运行时控件绑定简单属性 85
4.3 DataBinder.Eval方法 87
4.4 实现导航按钮 93
第5章 列表控件 96
5.1 DataGrid控件 97
5.1.1 使用DataGrid显示表格数据 97
5.1.2 使用DataGrid编辑数据 102
5.1.3 更新数据集和数据库 105
5.1.4 类型化数据集与非类型化数据集 107
5.1.5 从数据表中删除记录 108
5.1.6 在DataGrid中分页 109
5.1.7 DataGrid控件的数据绑定、常用属性及事件 111
5.2 DataList Web服务器控件 113
5.2.1 使用DataList中的项目模板和选择项目模板 114
5.2.2 通过类编号查询产品 120
5.2.3 从模板处理回发 124
5.2.4 Image和HyperLink Web服务器控件 134
5.2.5 DataList控件 135
5.2.6 会话状态 139
5.3 按钮服务器控件 142
5.3.1 按钮控件的常用属性 142
5.3.2 按钮控件的常用事件 143
5.3.3 容器控件中的按钮 144
5.4 Repeater Web服务器控件 144
5.4.1 在Web窗体页中创建只读数据访问 145
5.4.2 创建类别菜单 149
第6章 创建多层的分布式应用程序 153
6.1 设计方案 153
6.2 数据库层 155
6.2.1 创建购物车表 155
6.2.2 创建执行基本的购物车操作的存储过程 156
6.3 业务层 159
6.3.1 创建业务层 159
6.3.2 Cookie 168
6.3.3 HttpContext类 172
6.4 表示层 173
6.4.1 创建Web窗体 173
6.4.2 自定义DataGrid控件中的列 175
6.4.3 导入业务对象 182
6.4.4 编写代码 182
6.4.5 修改Web窗体页AddToCar.aspx 186
6.4.6 测试应用程序 187
第7章 Web服务 189
7.1 了解Web服务 189
7.1.1 概述 189
7.1.2 什么是Web服务 190
7.2 创建Web服务 190
7.3 访问Web服务 195
7.4 简单对象访问协议(SOAP)和Web服务 199
7.5 搜索类目 200
7.5.1 创建CatalogService Web服务 201
7.5.2 访问CatalogService Web服务 205
第8章 服务器控件窗体验证 210
8.1 RequiredFieldValidator与ValidationSummary控件 211
8.1.1 客户登录 211
8.1.2 RequiredFieldValidator控件及其常用属性 226
8.1.3 ValidationSummary控件及其常用属性 228
8.2 CompareValidator与RegularExpressionValidator控件 229
8.2.1 客户注册 229
8.2.2 CompareValidator服务器控件及其常用属性 241
8.2.3 RegularExpressionValidator服务器控件及其常用属性 242
8.3 客户结账 242
8.3.1 创建数据层 244
8.3.2 创建业务层 245
8.3.3 创建表示层 250
8.3.4 设计订单Web窗体页 264
8.4 视图状态 269
8.4.1 视图状态的作用 269
8.4.2 以视图状态存储信息 269
8.4.3 从视图状态检索信息 269
8.4.4 EnableViewState属性 269
8.5 CustomValidator服务器控件 270
8.5.1 概述 270
8.5.2 结账页面的自定义验证 270
8.6 客户端验证 271
第9章 基于窗体的身份验证 274
9.1 登录、账户管理及结账 274
9.2 启用Web应用程序以使用Forms身份验证 282
9.3 授权用户和角色 284
9.4 Forms身份验证凭据 286
9.5 Forms身份验证实用工具 287
9.5.1 FormsAuthentication.Authenticate方法 287
9.5.2 FormsAuthentication.HashPasswordForStoringInConfigFile方法 287
9.5.3 FormsAuthentication.SetAuthCookie方法 289
9.5.4 FormsAuthentication.GetAuthCookie方法 290
9.5.5 FormsAuthentication.RedirectFromLoginPage方法 291
9.5.6 FormsAuthentication.GetRedirectUrl方法 292
9.5.7 FormsAuthentication.SignOut方法 293
9.6 在Web.config中存储数据 293
第10章 Web用户控件 295
10.1 创建Web用户控件 295
10.1.1 编写业务层代码 297
10.1.2 用户控件界面设计 297
10.1.3 用户控件的初始化及事件处理 300
10.2 使用用户控件 305
10.3 公开用户控件属性 310
10.4 操作用户控件属性 311
10.5 使用HtmlInputFile服务器控件 311
10.5.1 产品管理 312
10.5.2 添加产品 325
10.6 以编程方式向Web窗体页添加用户控件 328
第11章 Web窗体状态管理 333
11.1 应用程序状态 334
11.1.1 聊天室 334
11.1.2 关于多线程的说明 338
11.2 应用程序和会话状态事件 338
11.3 缓存应用程序数据 343
11.4 有关状态的比较 345
11.4.1 视图状态 345
11.4.2 Cookie 346
11.4.3 查询字符串 346
11.4.4 会话状态 346
11.4.5 应用程序状态 347
第12章 对控件应用样式 348
12.1 使用CSS样式 348
12.1.1 级联式样式表(CSS)介绍 348
12.1.2 在STYLE块内定义CSS样式规则 348
12.1.3 CSS样式规则的优先级 349
12.1.4 将HTML元素分配给CSS样式CLASS 349
12.2 对HTML控件应用样式 352
12.3 应用外部CSS样式表 354
第13章 自定义控件 361
13.1 概述 361
13.2 创建第一个Web自定义控件 362
13.2.1 创建Web应用程序项目 363
13.2.2 创建自定义控件 363
13.2.3 使用自定义控件 364
13.2.4 创建自定义设计器 365
13.2.5 个性化控件 368
13.3 维护控件中的状态 369
13.4 开发复合控件 372
13.4.1 概述 372
13.4.2 创建Login控件 372
13.4.3 在页上使用Login控件 374
13.5 在复合控件中处理事件 376
13.5.1 创建Login控件 376
13.5.2 在页上使用Login控件 378
13.6 从复合控件触发自定义事件 379
13.6.1 修改Login控件 379
13.6.2 在页上使用Login控件 380
参考文献 382