第1章 认识ASP.NET 1
1.1 ASP.NET的执行环境 2
1.1.1 ASP.NET运行原理 2
1.1.2 开发人员的软件环境 4
1.1.3 正式网站的软件环境 6
1.2 .NET Framework 7
课后测验 8
第2章 认识Visual Studio 2008开发环境 9
2.1 版本介绍 11
2.2 新建网站 12
2.2.1 网站种类 12
2.2.2 语言 16
2.2.3 使用项目新建网站 16
2.3 加入ASP.NET网页 20
2.3.1 “设计”、“拆分”及“源”视图 21
2.3.2 添加新项或现有项 23
2.4 认识开发环境 24
2.5 创建与执行 26
2.6 设定断点及调试 27
2.6.1 设定断点 28
2.6.2 设定起始页 28
2.6.3 开始调试 29
课后测验 32
第3章 Visual C#程序语言基础 33
3.1 数据类型 34
3.2 变量 35
3.2.1 数据类型与变量 35
3.2.2 变量声明语法 36
3.2.3 命名规则 37
3.2.4 命名惯例 38
3.2.5 设定变量值 38
3.2.6 允许空值的变量 39
3.2.7 使用var声明变量 40
3.3 常量 41
3.4 注释 42
3.5 长句式可跨行 43
3.6 数组 43
3.6.1 数组声明语法 43
3.6.2 访问数组内容 44
3.6.3 变更数组大小 46
3.6.4 多维数组 47
3.6.5 数组的长度及维度 47
3.7 运算符 48
3.7.1 算术运算符 48
3.7.2 比较运算符 49
3.7.3 逻辑运算符 49
课后测验 50
第4章 基本数据处理 53
4.1 字符串 54
4.1.1 连接两个字符串 54
4.1.2 大小写转换 54
4.1.3 除去前后空白 55
4.1.4 字符串长度 55
4.1.5 取出部分字符串 56
4.1.6 判断某个字出现的位置 56
4.1.7 替换字符串的内容 58
4.1.8 将字符串拆分成字符串数组 58
4.1.9 字符串的格式化 59
4.2 日期时间 60
4.2.1 现在的日期、时间 61
4.2.2 传回年、月、日、时、分、秒 61
4.2.3 今天星期几 62
4.2.4 DateTime.TryParse判断是否为日期时间 62
4.2.5 日期时间的格式化 64
4.2.6 日期时间的加减 67
4.3 数值 69
4.3.1 判断是否为数值 69
4.3.2 数值的格式化 70
4.4 数据类型转换 72
4.4.1 隐式数据类型转换 73
4.4.2 显式数据类型转换 73
课后测验 74
第5章 流程控制 75
5.1 if条件判断 76
5.1.1 条件成立才执行 76
5.1.2 二选一的情况 79
5.1.3 if语句的嵌套 81
5.1.4 多选一的情况 83
5.2 switch条件判断 87
5.2.1 一对一的情况 88
5.2.2 多对一的情况 90
5.2.3 goto无条件跳转语句 92
5.3 for循环 92
5.3.1 简化重复的程序代码 93
5.4 foreach循环 96
5.5 while循环 97
5.5.1 先判断再执行 98
5.5.2 do...while循环先执行再判断 99
5.6 错误拦截 101
5.6.1 try...catch 101
5.6.2 识别不同的异常 104
5.6.3 finally 107
课后测验 109
第6章 面向对象 113
6.1 类与对象 114
6.2 建立类 115
6.2.1 添加类 115
6.2.2 设定命名空间 117
6.3 设计类 119
6.3.1 成员访问修饰符 119
6.3.2 数据成员 119
6.3.3 方法 120
6.3.4 属性 123
6.3.5 自动实现属性 127
6.3.6 构造函数 127
6.3.7 部分类 129
6.4 建立类对象 130
6.4.1 建立对象 131
6.4.2 访问数据成员及属性 133
6.4.3 调用方法 138
6.4.4 对象的比较 139
课后测验 142
第7章 认识Web窗体 145
7.1 Web窗体基本结构 146
7.2 使用ASP.NET服务器控件 150
7.2.1 ASP.NET服务器控件的特色 150
7.2.2 运行时转换成标准的HTML标签 152
7.2.3 保留视图状态 154
7.3 界面设计 156
7.3.1 流式布局 156
7.3.2 控件的绝对定位 158
7.3.3 以Table设计版面 159
7.4 设计样式 164
7.4.1 自动生成样式表 165
7.4.2 套用样式表 166
7.4.3 修改样式表 167
7.4.4 附加样式表 168
课后测验 169
第8章 在Web窗体中添加程序 171
8.1 程序与动态网页 172
8.2 程序代码存储方式 173
8.2.1 单一文件 173
8.2.2 代码分离 175
8.2.3 两种模式的比较 176
8.3 在HTML嵌入程序 177
8.4 事件与事件处理程序 178
8.4.1 创建事件处理程序 178
8.4.2 控件与事件处理程序间的对应 180
8.4.3 事件处理程序的自变量 182
8.5 Web窗体生命周期 184
8.5.1 事件发生顺序 185
8.5.2 事件与事件处理程序 189
8.5.3 判断PostBack 190
8.5.4 AutoPostBack 193
课后测验 195
第9章 使用Web服务器控件 197
9.1 使用Web服务器控件 198
9.1.1 在网页上添加Web服务器控件 198
9.1.2 设置控件名称 199
9.1.3 以“属性”窗口设置控件属性 200
9.2 Label 201
9.3 Image 203
9.4 HyperLink 205
9.5 TextBox 207
9.5.1 输入单行文字 207
9.5.2 输入多行文字 208
9.5.3 输入密码 209
9.5.4 用程序访问文本框的内容 210
9.6 Button、LinkButton与ImageButton 211
9.6.1 3种不同的按钮 211
9.6.2 设置按钮的外观 212
9.6.3 按钮的Click事件 213
9.6.4 OnClientClick事件 215
9.7 CheckBox 216
9.8 Calendar 217
9.8.1 设置样式 217
9.8.2 选取模式 219
9.8.3 选取事件 219
9.8.4 选取日期 220
9.9 项目集合 224
9.9.1 认识ListItemCollection 224
9.9.2 添加新项 224
9.9.3 通过索引值访问 225
9.9.4 项目数 226
9.9.5 删除项目 227
9.9.6 用foreach循环访问集合 228
9.10 BulletedList 229
9.10.1 编辑项目 229
9.10.2 列表样式 230
9.10.3 以程序添加项目 231
9.11 RadioButtonList 232
9.11.1 项目显示方式 234
9.11.2 被选取的项目 235
9.12 CheckBoxList 237
9.12.1 找出所有被选取的项目 238
9.13 DropDownList 238
9.14 ListBox 241
9.14.1 显示行数 241
9.14.2 单选与多选 242
9.14.3 被选取的项目 242
课后测验 246
第10章 验证控件 249
10.1 何谓验证控件 250
10.1.1 使用验证控件 251
10.1.2 何时验证 252
10.1.3 结合多个验证控件 253
10.2 RequiredFieldValidator 254
10.3 Compare Validator 256
10.3.1 与常量值比较 256
10.3.2 与另一个控件比较 258
10.3.3 检查数据类型 259
10.4 Ranee Validator 260
10.5 RegularExpression Validator 261
10.5.1 认识正则表达式 263
10.6 Custom Validator 264
10.6.1 Web服务器端的验证程序 265
10.6.2 浏览器中的验证程序 266
10.7 显示错误信息 267
10.7.1 Display属性 268
10.7.2 ValidationSummary集中显示 268
10.8 验证群组 270
课后测验 272
第11章 母版页设计 277
11.1 何谓母版页 278
11.1.1 新建母版页 279
11.1.2 Master Page的特点 281
11.2 何谓内容页 283
11.2.1 设计内容页 284
11.2.2 内容页的特色 288
11.2.3 以动态方式附加母版页 290
11.3 HTML相对路径解决方案 292
11.4 在内容页内控制母版页 295
11.4.1 设置页标题 295
11.4.2 变更母版页的控件内容 297
课后测验 299
第12章 认识关系型数据库 301
12.1 关系型数据库基本概念 302
12.1.1 表 302
12.1.2 关联 302
12.2 SQL Server Express简介 303
12.2.1 确认SQL数据库的版本 304
12.3 建立数据库 305
12.3.1 App_Data目录 306
12.4 设计表 308
12.4.1 列 309
12.4.2 数据类型 309
12.4.3 何谓Null 310
12.4.4 设置主键 310
12.4.5 唯一标识 311
12.4.6 表名称 312
12.5 建立表间的关联 312
12.6 添加数据 316
12.7 安装示例数据库 317
12.8 执行SQL语句 319
12.8.1 Visual Studio数据查询环境 319
12.8.2 选取查询 320
12.8.3 更新数据 323
12.8.4 添加数据 325
12.8.5 删除数据 328
课后测验 330
第13章 ADO.NET与数据访问 333
13.1 ADO.NET数据访问架构 334
13.1.1 .NET数据提供者 334
13.1.2 ADO.NET的数据访问模式 335
13.2 以SqlConnection建立数据库连接 337
13.2.1 连接字符串 337
13.2.2 建立SqlConnection对象 338
13.2.3 打开及关闭连接 339
13.2.4 判断连接状态 340
13.3 以SqlCommand执行SQL语句 341
13.3.1 建立SqlCommand对象 342
13.3.2 SqlCommand常用属性 342
13.3.3 执行SQL语句 343
13.4 异常的捕捉及处理 347
13.4.1 打开数据库连接可能产生的异常 347
13.4.2 执行SQL语句时可能发生的异常 349
13.4.3 其他异常 353
13.5 以SqlDataReader读取数据 355
13.6 SqlDataAdapter与DataSet 358
13.7 设置SQL语句中的参数 362
13.7.1 在SQL语句中加入@符号开头的参数 363
13.7.2 在SqlCommand中设置参数值 363
13.7.3 SqlDataAdapter与参数 364
13.8 使用服务器控件展示数据 365
13.8.1 使用GridView展示数据 366
13.8.2 使用列表控件展示数据 368
课后测验 372
第14章 使用SqlDataSource与GridView控件 375
14.1 ASP.NET数据访问架构 376
14.2 使用SqlDataSource控件 377
14.2.1 数据源的种类 378
14.2.2 连接字符串 379
14.2.3 将连接字符串存储到应用程序配置文件中 379
14.2.4 查询语句 381
14.2.5 数据源模式 385
14.3 使用GridView控件 386
14.3.1 选择数据源 386
14.4 分页 389
14.4.1 AllowPaging及PageSize属性 389
14.4.2 PagerSettings分页导航条的设置 391
14.4.3 PagerStyle分页导航条样式 394
14.5 排序 395
14.5.1 启用排序 395
14.5.2 排序事件 396
14.5.3 取消某一字段排序 398
14.6 自定义GridView字段 400
14.6.1 BoundField 401
14.6.2 CheckBoxField 404
14.6.3 ImageField 406
14.6.4 HyperLinkField 409
14.6.5 TemplateField 411
14.7 GridView的样式 416
14.7.1 自动套用格式 416
14.7.2 局部样式 416
14.7.3 字段样式 418
14.8 SqlDataSource与查询参数 419
14.8.1 添加查询参数 419
14.8.2 取得参数值 420
课后测验 423
第15章 设计数据维护网页 427
15.1 SqlDataSource的语句 428
15.2 启用GridView删除功能 430
15.2.1 确认SqlDataSource的DeleteCommand 431
15.2.2 启用删除 431
15.2.3 “删除”按钮 433
15.2.4 确认删除 434
15.2.5 主键扮演的角色 435
15.2.6 RowDeleting与RowDeleted事件 436
15.3 启用GridView编辑功能 441
15.3.1 确认SqlDataSource的UpdateCommand 442
15.3.2 启用编辑 442
15.3.3 RowUpdating与RowUpdated事件 444
15.3.4 Null的处理 449
15.4 自定义GridView编辑画面 449
15.4.1 模板字段——TemplateField 449
15.4.2 建立模板 451
15.4.3 Bind 452
15.4.4 使用验证控件检查输入数据 453
15.4.5 使用下拉框取代文字字段 456
课后测验 462
第16章 LINQ 465
16.1 认识LINQ 466
16.1.1 什么是LINQ 466
16.1.2 为什么要使用LINQ 468
16.2 建立DataContext类 469
16.2.1 Entity类 471
16.2.2 名称对应 472
16.2.3 表之间的关联 473
16.3 LINQ查询语法 475
16.3.1 from与select 475
16.3.2 自定义取回字段及数据内容 478
16.3.3 增加where条件 480
16.3.4 用orderby排序 482
16.3.5 用Take()及Skip()分页 485
16.3.6 延迟执行模式 486
16.4 LINQ与维护数据 488
16.4.1 新增数据 488
16.4.2 关系型新增 489
16.4.3 更新数据 491
16.4.4 删除数据 492
16.5 添加验证条件 495
16.5.1 字段验证条件 495
16.5.2 数据行验证条件 497
16.6 使用LinqDataSource控件 499
16.6.1 设置LinqDataSource 500
16.6.2 使用GridView等控件进行编辑与展示 503
课后测验 509
第17章 网站会员资格 511
17.1 网站的安全性 512
17.1.1 ASP.NET网站管理工具 512
17.1.2 验证类型 513
17.1.3 在Web.config配置验证类型 515
17.1.4 访问规则 515
17.1.5 在Web.config配置访问规则 517
17.2 用户信息 520
17.2.1 新建用户 520
17.2.2 管理用户 521
17.2.3 存储用户信息 524
17.3 登录类控件 526
17.3.1 Login控件 526
17.3.2 LoginName控件 530
17.3.3 LoginStatus控件 532
17.3.4 LoginView控件 533
17.3.5 CreateUserWizard控件 535
17.4 自定义登录验证规则 536
17.4.1 ASPNETDB表 536
17.4.2 自定义验证表 537
17.4.3 更改验证方式 538
课后测验 541
第18章 Web Service的开发与应用 543
18.1 何谓Web Service 544
18.1.1 Web Service如何运作 544
18.1.2 为什么要学Web Service 545
18.2 Web Service的开发与设计 546
18.2.1 建立Web Service 546
18.2.2 Web Service基本架构 548
18.3 访问Web Service 550
18.3.1 通过Web浏览器访问Web Service 551
18.3.2 通过代理程序访问Web Service 552
18.3.3 引用Web Service 553
18.3.4 调用Web Service 556
18.4 网络上的Web Service 557
课后测验 559
第19章 ASP.NET AJAX 565
19.1 什么是AJAX 566
19.2 建立ASP.NET AJAX网站 567
19.3 设计ASP.NET AJAX网页 568
19.3.1 ScriptManager脚本管理员 568
19.3.2 UpdatePanel部分更新面板 569
19.3.3 UpdatePanel的Trigger属性 570
19.3.4 Timer定时触发事件 571
19.4 浏览器版的性能监视器 576
19.4.1 认识性能计数器 576
19.4.2 基本网页设计 577
19.4.3 利用ASP.NET AJAX动态及时更新 579
19.5 结合ASP.NET AJAX与GridView 582
19.5.1 标准的GridView数据编辑网页 582
19.5.2 添加ASP.NET AJAX控件 583
19.5.3 添加查询功能 583
19.5.4 设置UpdatePanel的Trigger 584
19.5.5 使用UpdateProgress 584
课后测验 586
第20章 管理与部署ASP.NET应用程序 587
20.1 配置文件 588
20.1.1 使用配置文件的好处 588
20.1.2 建立配置文件 589
20.1.3 配置文件基本结构 589
20.2 应用程序设置 592
20.2.1 <appSettings>设置 592
20.2.2 读取<appSettings>中的设置值 593
20.3 存储连接信息 596
20.3.1 <connectionStrings>设置 597
20.3.2 读取<connectionStrings>中的设置值 597
20.4 引用命名空间 600
20.5 调试 601
20.6 跟踪 602
20.6.1 启用跟踪 603
20.6.2 跟踪信息说明 603
20.6.3 添加自定义的跟踪信息 606
20.6.4 启用网站层级的跟踪功能 607
20.7 配置文件的继承性 608
20.7.1 Machine.config 608
20.7.2 Web.config 609
20.8 复制网站 612
20.8.1 连接至远程网站 612
20.8.2 查看文件状态 613
课后测验 614
第21章 使用Wizard设计线上测验系统 617
21.1 网站导航 618
21.1.1 线上测验 620
21.1.2 试题管理 622
21.1.3 答案管理 623
21.1.4 注册会员 625
21.1.5 注销系统 625
21.2 数据库设计 626
21.3 网页设计分析 627
21.3.1 网站架构 627
21.3.2 配置文件——Web.config 628
21.3.3 母版页——MasterPage.master 630
21.3.4 注册会员——NewUser.aspx 630
21.3.5 登录网页——Login.aspx 632
21.3.6 试题管理——QuestionManager.aspx 632
21.3.7 答案管理——AnswerManager.aspx 634
21.3.8 注销页面——Logout.aspx 635
21.4 使用Wizard控件设计线上测验 636
21.4.1 何谓ASP.NET Wizard控件 636
21.4.2 设计Wizard控件 636
21.4.3 Wizard控件的StepType属性 637
21.4.4 使用事件控管流程 638
21.4.5 线上测验——Default.aspx 638
第22章 使用Silverlight设计影音共享网站 653
22.1 网站预览 654
22.2 使用Microsoft Expression Encoder 657
22.2.1 下载Microsoft Expression Encoder 657
22.2.2 建立操作 657
22.2.3 导入影片 658
22.2.4 输出设置 659
22.2.5 编码 660
22.2.6 套用Silverlight范本 660
22.3 数据库设计 662
22.4 网站架构 664
22.5 网站配置 665
22.6 在Utilities.cs中编写共享函数 668
22.7 网页设计 674
22.8 Silverlight网页 681
22.9 IIS带宽节流设置 683