本书围绕Web应用程序开发,系统地介绍了ASP.NET技术。全书共11章,主要内容包括:ASP.NET简介、Visual Studio集成开发环境、ASP.NET应用程序基础、服务器控件与用户控件、Web应用的状态管理、主题与母版页、ASP.NET站点导航技术、ADO.NET数据访问技术、数据源控件与数据绑定控件、ASP.NET的三层架构及ASP.NET项目开发实例。本书是一本立体化教材,围绕每一个知识单元配有短视频讲解,方便读者学习。同时,每章均配有上机实训和习题,可帮助读者对该章所学知识进行巩固。
本书结构清晰,实例丰富,图文对照,浅显易懂,可作为高等院校计算机及相关专业ASP.NET开发课程的教材,还可作为有一定的面向对象编程和数据库基础,想利用ASP.NET技术开发Web应用程序的软件开发人员的入门参考书籍。
本书的MOOC教学视频、电子教案、示例源代码、习题答案和上机实训源代码可以登录出版社网站(www.xduph.com)下载。
ASP.NET作为Web应用程序开发的主流技术之一,为建立和部署企业级Web应用程序提供所必需的服务。近年来,伴随着ASP.NET技术的不断发展,与之对应的开发工具也在更新换代。使用Visual Studio和C#开发ASP.NET应用程序是最佳选择,颇受开发人员青睐。Visual Studio提供了多种Web应用程序的开发模式,开发者能够方便快速地实现各种复杂的页面设计和后台代码处理功能。
本书系统地介绍了ASP.NET技术。全书共11章,各章内容如下:
第1章为ASP.NET简介。本章介绍B/C和C/S体系架构的区别及其使用场景、C#语言与.NET框架的特点,重点介绍ASP.NET的三种开发模式。本书后续章节主要围绕Web Forms开发模式进行介绍。
第2章为Visual Studio集成开发环境。本章通过一个简单的“HelloWorld”项目的开发,介绍Visual Studio集成开发环境的使用及其常用的窗口功能。
第3章为ASP.NET应用程序基础。本章介绍ASP.NET应用程序与页面生命周期、ASP.NET Web页面、Page类的内置对象和应用程序的异常处理机制。
第4章为服务器控件与用户控件。本章主要介绍HTML服务器控件、Web服务器控件和验证控件的使用,以及用户控件的创建和应用。
第5章为Web应用的状态管理。本章主要介绍客户端状态管理技术和服务器端状态管理技术的功能及其异同。客户端状态管理技术包括视图状态、查询字符串和Cookie技术;服务器端状态管理技术包括会话状态管理和应用程序状态管理。同时,通过购物篮的实现方法,介绍几种状态管理技术的区别。
第6章为主题与母版页。本章首先介绍主题的使用方法,利用主题可以为网页提供一致的外观;然后介绍母版页的创建和使用方法,通过母版页可以为网页创建一致的布局;最后介绍母版页的多层嵌套方法。
第7章为ASP.NET站点导航技术。本章首先介绍站点地图的创建;然后介绍站点导航控件的使用,包括SiteMapPath控件、SiteMapDataSource控件、Menu控件和TreeView控件的使用。
第8章为ADO.NET数据访问技术。本章首先介绍ADO.NET数据访问组件和数据访问模式;然后介绍连接模式对数据库的增、删、改、查方法;最后介绍DataSet数据集和非连接模式访问数据库的方法。
第9章为数据源控件与数据绑定控件。本章首先介绍数据源控件的使用,包括SqlDataSource控件、ObjectDataSource控件和LinqDataSource控件的使用;然后介绍数据绑定控件的使用,包括GridView控件、DetailsView控件、FormView控件、ListView控件和DataPager控件的使用。
第10章为ASP.NET的三层架构。本章首先介绍三层架构的原理、搭建方法和各层的代码实现方法;然后介绍代码自动生成工具的使用以及简化三层架构的搭建过程。
第11章为ASP.NET项目开发实例。本章通过基于三层架构开发的学生作品管理平台介绍ASP.NET Web项目的开发过程,从而对本书进行总结,让读者学会在项目中应用前面所学的各章知识。
为了进一步帮助读者更好地学习,本书配套了一系列具有MOOC特征的教学微视频。读者可以在出版社网站(www.xduph.com)上查阅到本书的配套学习资源,从而快速掌握本书的知识。同时,每个章节知识点都配有二维码,读者通过扫描二维码的方式,就可以直接观看对应章节的教学视频。
本书以易学易用为重点,充分考虑实际的开发需求,使用大量实例,引导读者掌握ASP.NET页面设计与网站开发的方法和技巧。读者在学习本书各章知识点时,可以通过各章所配套的实训和习题巩固所学内容。同时,本书可作为高校计算机类专业的教材,通过MOOC平台的配合使用,可以帮助教师采用翻转课堂或混合教学两种教学模式。
本书编者长期从事计算机类专业的教学科研工作,具有丰富的项目实战经验。全书由杭州电子科技大学林菲和龚晓君担任主编,马虹和孙丹凤担任副主编。本书第1~9章由林菲和龚晓君共同编写,第10章和第11章由马虹和孙丹凤共同编写。浙江交通职业技术学院的孙勇教授负责全书的主审工作;许宇迪、杨阳和张聪主要负责本书的文字校对、习题参考答案及实训参考源代码的整理工作。本书的配套教学视频得到了杭州电子科技大学MOOC社团成员的大力支持,在此深表感谢!
由于编者水平有限,书中难免存在不当之处,敬请读者批评指正!
第1章 ASP.NET简介 1
1.1 B/S与C/S架构模式 1
1.2 C#?语言与?.NET框架 2
1.2.1 C#?语言 2
1.2.2 .NET Framework平台体系结构 3
1.3 ASP.NET的开发模式 4
1.3.1 Web Pages开发模式 4
1.3.2 Web Forms开发模式 5
1.3.3 MVC开发模式 7
本章小结 7
习题 8
第2章 Visual Studio集成开发环境 9
2.1 Visual Studio集成开发环境的
?安装和配置 9
2.2 创建一个简单的ASP.NET应用程序 10
2.3 Visual Studio 集成开发环境的
?常用窗口 15
2.2.1 服务器资源管理器 15
2.2.2 解决方案资源管理器 15
2.2.3 工具箱 17
2.2.4 Web页面设计窗口 18
2.2.5 属性窗口 18
2.2.6 HTML源代码编辑窗口 19
2.2.7 后台代码编辑窗口 20
2.2.8 类视图 20
2.2.9 对象浏览器 21
本章小结 21
本章实训 Visual Studio集成开发环境 21
习题 22
第3章 ASP.NET应用程序基础 23
3.1 ASP.NET应用程序与页面生命周期 23
3.1.1 应用程序生命周期 23
3.1.2 Web页面生命周期 26
3.2 ASP.NET Web页面 30
3.2.1 Web窗体代码模型 30
3.2.2 Web窗体的添加 35
3.2.3 Web窗体基本语法结构 35
3.3 Page类的内置对象 37
3.3.1 Response对象 38
3.3.2 Request对象 40
3.3.3 Server对象 44
3.4 应用程序的异常处理机制 46
3.4.1 为什么要进行异常处理 46
3.4.2 trycatch异常处理块 47
3.4.3 页面级的Page_Error事件处理
异常 48
3.4.4 页面级的ErrorPage属性处理异常 49
3.4.5 应用程序级的Application_Error
事件异常处理 50
3.4.6 配置应用程序的异常处理 51
本章小结 52
本章实训 ASP.NET应用程序基础 52
习题 52
第4章 服务器控件与用户控件 55
4.1 服务器控件概述 55
4.2 HTML服务器控件 56
4.2.1 HTML常用标签 56
4.2.2 HTML服务器控件 57
4.3 Web服务器控件 59
4.3.1 Web服务器控件概述 59
4.3.2 常用标准控件 64
4.4 验证控件 79
4.4.1 验证控件概述 79
4.4.2 验证控件的使用 82
4.4.3 验证组的使用 91
4.4.4 禁用验证 92
4.4.5 测试验证有效性 92
4.5 用户控件 93
4.5.1 用户控件的创建 94
4.5.2 用户控件的使用 97
本章小结 98
本章实训 服务器控件与用户控件 98
习题 99
第5章 Web应用的状态管理 104
5.1 Web应用的状态管理概述 104
5.2 客户端状态管理 105
5.2.1 视图状态 105
5.2.2 查询字符串 108
5.2.3 Cookie 110
5.2.4 基于Cookie的购物篮实现 117
5.3 服务器端状态管理 120
5.3.1 会话状态 121
5.3.2 应用程序状态 125
5.3.3 基于Session的购物篮实现 128
本章小结 130
本章实训 Web应用的状态管理 130
习题 131
第6章 主题与母版页 133
6.1 主题 133
6.1.1 主题的创建与应用 133
6.1.2 主题中的外观文件 135
6.1.3 主题中的CSS样式文件 137
6.1.4 主题的动态应用 137
6.2 母版页 139
6.2.1 创建母版页 139
6.2.2 创建内容页 143
6.2.3 母版页的工作原理 144
6.2.4 母版页和内容页中的事件 145
6.2.5 从内容页访问母版页的内容 145
6.2.6 母版页的嵌套 147
本章小结 148
本章实训 主题与母版页 148
习题 149
第7章 ASP.NET站点导航技术 152
7.1 ASP.NET站点导航概述 152
7.2 站点地图 153
7.3 配置多个站点地图 156
7.3.1 从父站点地图链接到子站点
地图文件 156
7.3.2 在web.config文件中配置多个
站点地图 157
7.4 SiteMapPath控件 158
7.5 SiteMapDataSource控件 160
7.6 Menu控件 162
7.6.1 定义Menu菜单内容 162
7.6.2 Menu控件样式 169
7.7 TreeView控件 170
7.7.1 定义TreeView节点内容 170
7.7.2 带复选框的TreeView控件 176
本章小结 178
本章实训 ASP.NET站点导航技术 178
习题 179
第8章 ADO.NET数据访问技术 181
8.1 ADO.NET基础 181
8.1.1 ADO.NET模型 181
8.1.2 ADO.NET的组件 182
8.1.3 ADO.NET的数据访问模式 183
8.2 连接模式数据库访问 184
8.2.1 使用SqlConnection对象连接
数据库 185
8.2.2 使用SqlCommand对象执行
数据库命令 193
8.2.3 使用SqlDataReader读取数据 202
8.2.4 为SqlCommand传递参数 207
8.2.5 使用SqlCommand执行存储过程 211
8.2.6 使用事务处理 214
8.3 断开模式数据库访问 218
8.3.1 DataSet数据集 218
8.3.2 使用SqlDataAdapter对象执行
数据库命令 226
本章小结 237
本章实训 ADO.NET数据访问技术 237
习题 239
第9章 数据源控件与数据绑定控件 244
9.1 数据源控件 244
9.1.1 SqlDataSource数据源控件 245
9.1.2 ObjectDataSource数据源控件 258
9.1.3 LinqDataSource数据源控件 261
9.2 数据绑定控件(Repeater控件的使用) 265
9.2.1 GridView控件 265
9.2.2 DetailsView控件 276
9.2.3 FormView控件 282
9.2.4 ListView控件和DataPager控件 285
本章小结 295
本章实训 数据源控件与数据绑定控件 295
习题 295
第10章 ASP.NET的三层架构 299
10.1 三层架构简介 299
10.1.1 什么是三层架构 299
10.1.2 三层架构的优缺点 300
10.2 搭建三层架构 301
10.3 三层架构的实现 306
10.3.1 Model层的实现 306
10.3.2 数据库操作类的实现 307
10.3.3 数据访问层的实现 309
10.3.4 业务逻辑层的实现 311
10.3.5 表示层的实现 312
10.4 代码自动生成工具介绍 316
10.4.1 动软?.Net代码生成器软件安装 316
10.4.2 数据库连接 316
10.4.3 项目框架自动生成 319
10.4.4 批量代码生成 323
10.4.5 单表代码生成 324
本章小结 327
本章实训 ASP.NET三层架构 327
习题 328
第11章 ASP.NET项目开发实例 329
11.1 系统概述与功能模块划分 329
11.1.1 系统概述 329
11.1.2 系统功能模块划分 329
11.2 数据库与模型设计和实现 329
11.2.1 数据库表结构设计 330
11.2.2 模型设计 331
11.3 数据访问层的设计与实现 335
11.3.1 基本数据访问类的实现 335
11.3.2 各对象对应数据访问类实现 342
11.4 业务逻辑层的设计与实现 351
11.5 系统页面设计与功能实现 355
11.5.1 添加空网站与基本配置 355
11.5.2 网站主页设计 355
11.5.3 管理员端相关页面设计与
功能实现 357
11.5.4 学生端相关页面设计与
功能实现 391
11.5.5 网站错误页面 402
11.6 单元测试 403
11.7 系统部署与发布 406
本章小结 412
本章实训 ASP.NET项目开发实例 412
习题 412
参考文献 414