图书目录

第1章  ASP.NET运行及开发环境 1

1.1  ASP.NET概述 1

1.1.1  静态页面和动态页面 1

1.1.2  .NET Framework 1

1.1.3  ASP.NET特性 2

1.1.4  ASP.NET的开发模式 2

1.2  IIS 3

1.2.1  IIS 7.5的安装 3

1.2.2  IIS 7.5中的网站、Web应用程序和虚拟目录 4

1.2.3  IIS Express 7

1.3  Visual Studio Community 2017 8

1.3.1  开发环境概览 8

1.3.2  使用解决方案管理VSC 2017中新建的网站 10

1.3.3  发布Web应用 12

1.3.4  复制网站 14

1.4  小结 14

1.5  习题 15

第2章  ASP.NET网站文件、jQuery和Bootstrap 17

2.1  .html文件和XHTML5 17

2.1.1  .html文件结构 17

2.1.2  常用的XHTML5元素 18

实例2-1  认识常用的XHTML5元素 19

2.2  .aspx文件 20

2.2.1  单文件页模型 20

实例2-2  熟悉单文件页模型 21

2.2.2  代码隐藏页模型 22

实例2-3  熟悉代码隐藏页模型 22

2.3  .css文件和CSS常识 23

2.3.1  定义CSS3样式 23

2.3.2  CSS3样式位置 24

实例2-4  运用页面样式 25

实例2-5  运用外部样式表 26

2.4  .js文件和JavaScript常识 27

2.4.1  JavaScript代码位置 27

实例2-6  熟悉<head>元素中的JavaScript代码 27

实例2-7  熟悉<body>元素中的JavaScript代码 28

实例2-8  运用独立的.js文件 29

2.4.2  JavaScript运用实例 29

实例2-9  实现图片动态变化效果 29

实例2-10  实现一个简易时钟 30

2.5  jQuery 31

2.5.1  jQuery基础语法 32

2.5.2  jQuery运用实例 33

实例2-11  利用jQuery管理XHTML元素 33

实例2-12  利用jQuery实现一个时间数据来源于服务器端的时钟 34

2.6  .xml文件和XML常识 36

实例2-13  表达一个XML格式的早餐菜单 36

2.7  Web.config 37

2.8  Global.asax 37

2.9  Bootstrap 38

实例2-14  利用Bootstrap设计表单 38

2.10  小结 40

2.11  习题 40

第3章  C#和ASP.NET的结合 43

3.1  C#概述 43

3.2  .NET Framework命名空间 43

3.3  编程规范 44

3.3.1  程序注释 44

3.3.2  命名规则 44

3.4  常量与变量 45

3.4.1  常量声明 45

3.4.2  变量声明 46

3.4.3  修饰符 46

3.4.4  局部变量作用范围 46

3.5  数据类型 47

3.5.1  值类型 47

实例3-1  运用枚举类型变量 48

3.5.2  引用类型 49

3.5.3  装箱和拆箱 50

3.6  运算符 51

3.7  流程控制 52

3.7.1  选择结构 52

实例3-2  运用switch语句 53

3.7.2  循环结构 54

实例3-3  运用while语句 54

实例3-4  运用for语句 56

实例3-5  运用foreach语句 57

3.7.3  异常处理 57

实例3-6  运用throw语句 58

实例3-7  运用try…catch…finally结构 59

3.8  自定义ASP.NET类 60

3.8.1  类的常识 61

3.8.2  属性 61

实例3-8  定义Account类的属性 61

3.8.3  构造函数 62

实例3-9  定义Account类的构造函数 62

3.8.4  方法 63

实例3-10  定义Account类的存款和取款方法 63

实例3-11  结合Account类和ASP.NET页面 64

3.8.5  事件 65

实例3-12  在AccountEvent类中增加账户金额不足事件并运用事件 65

3.8.6  继承 67

实例3-13  实现继承类 67

3.9  ASP.NET页面调试 67

3.10  小结 68

3.11  习题 69

第4章  ASP.NET标准控件 71

4.1  ASP.NET页面事件处理概述 71

4.1.1  ASP.NET页面事件 71

4.1.2  IsPostBack属性 71

实例4-1  运用IsPostBack属性 72

4.2  ASP.NET服务器控件概述 73

4.2.1  HTML服务器控件简介 73

4.2.2  Web服务器控件简介 73

4.3  常用ASP.NET标准控件 73

4.3.1  Label控件 74

实例4-2  通过键盘快捷键激活特定文本框 74

4.3.2  TextBox控件 75

实例4-3  综合运用TextBox控件 75

4.3.3  Button、LinkButton和ImageButton控件 77

实例4-4  利用Button控件执行客户端脚本 77

4.3.4  DropDownList控件 78

实例4-5  实现联动的下拉列表 79

4.3.5  ListBox控件 81

实例4-6  实现数据项在ListBox控件之间的移动 82

4.3.6  CheckBox和CheckBoxList控件 83

实例4-7  运用CheckBoxList控件 83

4.3.7  RadioButton和RadioButtonList控件 84

4.3.8  Image和ImageMap控件 85

实例4-8  利用ImageMap控件设计导航栏 86

4.3.9  HyperLink控件 86

实例4-9  组合使用HyperLink和Image控件 87

4.3.10  Table控件 87

实例4-10  动态生成表格 87

4.3.11  Panel和PlaceHolder控件 89

实例4-11  利用Panel实现简易注册页面 89

实例4-12  利用PlaceHolder动态添加控件 91

4.4  小结 92

4.5  习题 93

第5章  ASP.NET窗体验证 95

5.1  窗体验证概述 95

5.2  ASP.NET服务器验证控件 96

5.2.1  RequiredFieldValidator控件 96

实例5-1  禁止空数据且同时要改变初始值 97

5.2.2  CompareValidator控件 98

实例5-2  运用CompareValidator控件 98

5.2.3  RangeValidator控件 99

实例5-3  运用RangeValidator控件 99

5.2.4  RegularExpressionValidator控件 100

实例5-4  验证电子邮件地址 101

5.2.5  CustomValidator控件 102

实例5-5  验证必须输入一个偶数 102

5.2.6  ValidationSummary控件 105

实例5-6  综合运用验证控件 105

5.3  小结 108

5.4  习题 108

第6章  HTTP请求、响应及状态管理 110

6.1  HTTP请求 110

实例6-1  利用QueryString在页面间传递数据信息 110

实例6-2  利用ServerVariables和Browser返回服务器端和客户端信息 112

6.2  HTTP响应 113

实例6-3  利用Write()方法输出XHTML文本 113

实例6-4  利用Redirect()方法重定向页面 114

6.3  HttpServerUtility 115

实例6-5  运用HttpServerUtility对象 116

6.4  跨页面提交 117

实例6-6  运用跨页面提交技术 117

6.5  状态管理 119

6.5.1  ViewState 119

6.5.2  HiddenField控件 120

6.5.3  Cookie 120

实例6-7  利用Cookie限制页面访问 121

6.5.4  Session 123

实例6-8  利用Session限制页面访问 124

6.5.5  Application 126

实例6-9  统计网站在线人数 126

6.6  小结 127

6.7  习题 128

第7章  数据访问 130

7.1  数据访问概述 130

7.2  建立SQL Server 2016 Express数据库 131

7.3  使用数据源控件实现数据访问 133

实例7-1  利用LinqDataSource和GridView显示表数据 133

7.4  使用LINQ实现数据访问 135

7.4.1  LINQ查询表达式 135

7.4.2  LINQ to SQL概述 136

7.4.3  利用LINQ to SQL查询数据 137

实例7-2  利用LINQ to SQL实现投影 137

实例7-3  利用LINQ to SQL实现选择 138

实例7-4  利用LINQ to SQL实现排序 138

实例7-5  利用LINQ to SQL实现分组 138

实例7-6  利用LINQ to SQL实现聚合操作 139

实例7-7  利用LINQ to SQL实现直接引用对象连接 140

实例7-8  利用LINQ to SQL实现join连接 140

实例7-9  利用LINQ to SQL实现模糊查询 141

7.4.4  利用LINQ to SQL管理数据 141

实例7-10  利用LINQ to SQL插入数据 141

实例7-11  利用LINQ to SQL修改数据 142

实例7-12  利用LINQ to SQL删除数据 142

实例7-13  利用LINQ to SQL调用存储过程 143

7.4.5  LINQ to XML概述 143

7.4.6  利用LINQ to XML管理XML文档 144

实例7-14  利用LINQ to XML创建XML文档 144

实例7-15  利用LINQ to XML查询指定属性的元素 145

实例7-16  利用LINQ to XML插入元素 146

实例7-17  利用LINQ to XML修改元素 146

实例7-18  利用LINQ to XML删除元素 147

7.5  小结 147

7.6  习题 147

第8章  数据绑定 150

8.1  数据绑定概述 150

8.2  ListControl类控件 150

实例8-1  结合使用DropDownList和LINQ显示数据 151

实例8-2  根据选择项填充列表框内容 152

8.3  GridView控件 154

8.3.1  分页和排序 154

实例8-3  分页和排序GridView中数据 154

8.3.2  定制数据绑定列 156

实例8-4  自定义GridView数据绑定列 156

8.3.3  使用模板列 158

实例8-5  运用GridView模板列 159

8.3.4  利用GridView编辑、删除数据 162

实例8-6  为GridView中“删除”链接按钮添加客户端提示信息 162

实例8-7  结合GridView和独立页修改数据 164

8.3.5  显示主从表 167

实例8-8  在同一页显示主从表 167

实例8-9  在不同页显示主从表 169

8.4  DetailsView控件 172

实例8-10  结合GridView和DetailsView管理数据 172

8.5  小结 175

8.6  习题 175

第9章  ASP.NET三层架构 177

9.1  ASP.NET三层架构概述 177

9.2  搭建ASP.NET三层架构 178

实例9-1  搭建基于ASP.NET三层架构的MyPetShop 178

9.3  基于ASP.NET三层架构的用户管理 181

9.3.1  用户注册 181

实例9-2  实现MyPetShop的用户注册功能 181

9.3.2  用户登录 186

实例9-3  实现MyPetShop的用户登录功能 186

9.3.3  用户登录状态和权限 189

实例9-4  根据不同用户呈现不同的登录状态和权限 190

9.3.4  用户密码修改 192

实例9-5  修改已登录一般用户的密码 192

9.3.5  用户密码重置 195

实例9-6  重置用户密码 195

9.4  小结 201

9.5  习题 201

第10章  主题、母版和用户控件 203

10.1  主题 203

10.1.1  主题概述 203

10.1.2  自定义主题 203

10.1.3  使用主题 204

实例10-1  动态切换主题 205

10.2  母版页 207

10.2.1  母版页概述 207

10.2.2  创建母版页 207

实例10-2  创建母版页 207

10.2.3  创建内容页 208

实例10-3  创建内容页 208

10.3  用户控件 209

10.3.1  用户控件概述 209

10.3.2  创建用户控件 210

10.3.3  使用用户控件 211

实例10-4  使用用户控件 212

10.4  小结 212

10.5  习题 213

第11章  网站导航 215

11.1  网站地图 215

11.1.1  网站地图文件 215

实例11-1  创建网站地图 216

11.1.2  嵌套网站地图文件 217

实例11-2  创建嵌套网站地图 217

11.2  SiteMapPath控件显示导航 218

实例11-3  利用SiteMapPath控件显示导航 218

11.3  TreeView控件显示导航 219

11.3.1  TreeView控件 219

实例11-4  运用TreeView控件 220

11.3.2  使用TreeView控件实现导航 223

实例11-5  利用TreeView控件显示导航 223

11.4  Menu控件显示导航 223

实例11-6  利用Menu控件显示导航菜单 224

11.5  在母版页中使用网站导航 224

实例11-7  实现基于母版页的网站导航 224

11.6  小结 226

11.7  习题 226

第12章  ASP.NET Ajax 228

12.1  Ajax基础 228

12.1.1  Ajax概述 228

12.1.2  ASP.NET Ajax技术 229

12.2  ASP.NET Ajax服务器控件 229

12.2.1  ScriptManager控件 229

12.2.2  UpdatePanel控件 231

实例12-1  使用内部按钮刷新UpdatePanel控件 232

实例12-2  使用外部按钮刷新UpdatePanel控件 233

实例12-3  在同一个页面中使用多个UpdatePanel控件 235

12.2.3  Timer控件 236

实例12-4  运用Timer控件 237

12.2.4  UpdateProgress控件 239

实例12-5  运用UpdateProgress控件 239

12.3  AjaxControlToolkit程序包 241

实例12-6  运用CalendarExtender控件 243

实例12-7  运用PasswordStrength控件 244

12.4  小结 246

12.5  习题 246

第13章  Web服务和WCF服务 248

13.1  Web服务 248

13.1.1  Web服务概述 248

13.1.2  建立ASP.NET Web服务 249

实例13-1  建立ASP.NET Web服务 249

13.1.3  调用ASP.NET Web服务 251

实例13-2  调用ASP.NET Web服务 252

实例13-3  运用基于Web服务的AutoCompleteExtender控件 253

13.2  WCF服务 256

13.2.1  建立WCF服务 257

实例13-4  建立WCF服务 257

13.2.2  调用WCF服务 259

实例13-5  调用WCF服务 259

13.3  小结 261

13.4  习题 261

第14章  文件处理 263

14.1  驱动器、文件夹和文件操作 263

14.1.1  获取驱动器信息 263

实例14-1  显示Web服务器上所有驱动器的信息 263

14.1.2  文件夹操作 265

实例14-2  计算指定文件夹的大小 266

14.1.3  文件操作 269

实例14-3  文件的创建、复制、删除和移动操作 270

14.2  读写文件 273

14.2.1  Stream类 273

实例14-4  利用FileStream类读写文件 275

14.2.2  Reader和Writer类 278

实例14-5  利用StreamReader和StreamWriter读写文本文件 279

实例14-6  利用BinaryReader和BinaryWriter读写二进制数据文件 280

14.3  文件上传 282

实例14-7  利用FileUpload实现文件上传 282

14.4  小结 284

14.5  习题 284

第15章  MyPetShop应用程序 286

15.1  系统总体设计和开发思路 286

15.1.1  系统功能模块设计 286

15.1.2  用户控件设计 287

15.1.3  系统数据库总体设计 288

15.1.4  Web.config配置文件 288

15.1.5  基于VSC 2017开发MyPetShop应用程序的总体思路 289

15.2  MyPetShop.mdf数据库设计 290

15.2.1  数据表设计 290

15.2.2  数据表联系设计 292

15.3  用户控件设计 293

15.3.1 “热销商品自动定时刷新”用户控件 293

15.3.2 “商品分类列表”用户控件 293

15.3.3 “最新商品列表”用户控件 293

15.3.4 “商品分类及商品导航”用户控件 293

15.3.5 “网站导航”用户控件 294

15.3.6 “用户状态”用户控件 294

15.3.7 “天气预报”用户控件 294

15.4  前台显示页面设计 295

15.4.1  母版页 295

15.4.2  首页 295

15.4.3  商品详细信息页面 296

15.4.4  商品搜索页面 297

15.5  用户注册和登录模块设计 298

15.5.1  注册新用户 298

15.5.2  用户登录 298

15.5.3  修改用户密码 299

15.5.4  找回用户密码 299

15.5.5  退出系统 300

15.6  购物车模块设计 300

15.6.1  购物车存储设计与实现 300

15.6.2  购物车页面设计 300

15.6.3  购物车功能的设计与实现 301

15.7  订单处理模块设计 301

15.7.1  创建订单 302

15.7.2  查看订单 302

15.8  后台管理模块设计 303

15.8.1  商品分类管理 303

15.8.2  供应商信息管理 303

15.8.3  商品信息管理 304

15.8.4  订单管理 305

15.9  小结 307

15.10  习题 307