
ASP.NET是微软.NET战略中的一个重要成员,可以使用Visual C#、VB.NET、Visual C++.NET、JScript.NET等语言编写。
为了帮助读者快速进入ASP.NET的世界,本书通过9个精彩案例,由浅入深地介绍了ASP.NET网络程序设计的编程方法与实用技巧。主要包括:酒店管理系统、连锁中心配送系统、企业信息管理系统、鲜花预定系统、学生管理系统、学生选课系统、Blog、网络考试系统、网络书店系统等内容。同时结合最常见的SQL Server数据库,让读者掌握当前最流行的Web数据库开发技术。
本书体系结构清晰,解释说明详尽,开发案例典型,适合广大网页设计、网站开发等相关人员阅读,也可以作为各大中专院校师生的教材及教学参考用书,还可作为社会相关领域培训班的培训教材。
前 言
近年来,.NET的发展趋势越来越热,目前已经与Java和C++并列为最热门的三大编程技术。从目前的市场对程序员的需求可以看出 .NET的应用程度。很多企业的电子商务、电子政务和企业办公系统等的开发,都希望采用对中间业务层处理能力强大的.NET平台。
以上市场需求决定了 .NET正在成为一门热门的编程语言,有越来越多的人想学习它,也有一些其他语言的编程者想转到.NET编程环境中。根据作者的经验,做实际程序和读代码是最有效的学习方式。读者也可以从实际开发中参考帮助文档或其他的相关书籍来理解理论知识。
对于编程语言学习的程度不同,未来发展的空间也不一样,获得的经济回报也不同。为了让用户由最初的简单代码拷贝复用发展到.NET的纯面向对象的设计模式,让用户由浅入深地学习这门语言,笔者经过精心挑选后,编写了9个案例,以使读者从实际项目开发的角度理解实际的应用开发。同时对每个案例的核心代码进行讲解,并将 .NET的核心知识分成专题进行讲解,以让读者更加细致地了解每部分知识所实现的效果。笔者讲解时通过提出问题以引导读者进行发散思考,扩大思考空间,从而进行深入的思考和学习。
本书在内容的编排和目录组织上都十分讲究,争取让读者能够快速掌握用C#语言开发Web应用程序的能力。本书没有为理论而讲理论,而是全部采用分析案例的方式来介绍如何进行实际项目的研发。讲解具体案例的时候,尽量避免冗长的知识讲解,而是直接切入主题,告诉读者如何实现特定功能,让读者在实际操作中熟悉项目开发的流程。作者严格制作每一个案例,并强调案例的最终效果,这样保证了读者的起步层次比较高,从而在实践的过程中提高开发水平。
本书特色
1.取材广泛,内容丰富
本书案例包括:酒店管理系统、连锁中心配送系统、鲜花预定系统、企业信息管理系统、学生管理系统、学生选课系统、Blog、网络考试系统和网络书店系统。本书案例涉及多个行业,读者都可以对现有的系统进行扩展来满足实际开发的需要。
2.案例完整,结构清晰
本书选择的案例以及代码实现都是由浅入深,先讲解两层架构,然后实现三层架构的设计,让读者逐渐熟悉面向对象的设计理念。
3.讲解通俗,步骤详细
每个案例的开发步骤都以通俗易懂的语言阐述,并穿插了讲解和技巧文字,读者在阅读时就像听课一样详细而贴切。读者只需按照步骤操作,就可以掌握用C#开发实际项目的流程,并体会到独立完成具备一定功能系统的乐趣。
4.专题讲解,重点突出
在每一章的结束都有一节关于本章采用的重点技术分析,其讲述的内容都是满足于本书的整体结构。每章内容既有内在联系,又可分开阅读。读者可以根据需要分章阅读以寻找自己需要的内容,也可以全书通读,相信会有不同收获。
5.案例典型,搭建简单
本书所选案例均为实际开发中的典型案例,且都已在Visual Studio .NET 2005和SQL Server 2000环境下调试通过。读者只要按照我们提供的说明进行系统配置,便可以很容易地搭建成功。
6.代码准确,注释清晰
系统中代码的关键程序都带有详细的注释,以便于读者理解核心代码的功能和逻辑意义。
本书内容
全书共分9章:
第1章为酒店管理系统。从解决部门之间的信息沟通与处理,提高酒店办公效率方面出发,主要实现了对客房的信息、经营情况以及客户信息的管理等功能。
第2章为连锁中心配送系统。以配送中心在连锁销售物流中的作用为出发点,对连锁店的信息管理、产品的信息管理和月销售量统计分析等工作做了具体实现。
第3章为企业信息管理系统。随着互联网络的普及,越来越多的机构和企业希望拥有自己的办公自动化应用网络平台。据此,系统中主要实现了企业新闻管理、企业产品管理、企业用户管理以及企业订单的管理等功能。
第4章为鲜花预定系统。主要实现了用户在该系统上预定鲜花和查询鲜花信息等功能,并且还可以发表一些贴子,对各种鲜花进行评论。
第5章为学生管理系统。主要实现学生信息的统计分析和查询功能,还为学生注册和选课等方面提供便利,也为老师提供一个方便、准确的服务,是一个标准的学生管理系统模型。
第6章为学生选课系统。它是第5章的跟进版,进一步实现了办公的自动化。系统中学生可以管理自己的个人信息、选择自己喜欢的课程、管理自己所选的课程,教师可以查看自己所担任课程的课表和选课学生的信息。
第7章为Blog。它是大家在网上经常看到和接触的。本章以Blog为题,介绍从分类管理、文章管理、添加文章、评论管理、链接管理和留言管理等方面来构建一个Blog类型的网站。
第8章为网络考试系统。系统中教师可以进行科目管理、试题管理和答题测试等功能,而学生则主要负责答题。
第9章为网络书店系统。主要从图书的分类管理、图书的添加、订单的管理以及顾客的订购等方面出发,来实现一个网上书店。
为了加深读者对ASP.NET某些关键技术的理解,每一章正文都有对本书所使用的ASP.NET的典型特性的初步探讨,内容包括两层架构和三层架构、ASP.NET的配置文件Web.Config、C#的异常机制、ADO.NET、ASP.NET Form验证、状态管理、数据缓存、XML操作,希望这些讨论能起到抛砖引玉的效果。
读者对象
本书体系结构清晰,解释说明详尽,开发案例典型,适合广大网页设计、网站开发等相关人员阅读,可以作为各大中专院校师生的教学及自学参考书,也可作为社会相关领域培训班的培训教材,还可以作为初次学习ASP.NET Web编程的入门教材。它能帮助中级读者提高技能,对高级读者也有一定的参考价值。
在本书的编写过程中,我们力求精益求精,但难免有不足之处,敬请广大读者、专家提出宝贵意见。
技术支持方式
本书的专有论坛:http://www.douban.com/group/19076/。作者的E-mail:solomonzsl@163.com。
创作团队
本书由强锋科技组织编写,由张树亮、李超担任主笔。其他参与编写和光盘制作的人员有王俊标、陈晨、李卓龙、高守传、郭瑞、周宇炜、蔡雪焘、陈杰、荣飞、郑林、张路平、顼宇峰、罗皓菡、赵正坤、公芳亮、程明雷、梁文建、马斗、邱哲、宋昕、陈刚、张传毓、赖梅艳、杨晓强、梁计锋、强致懿、郭腊梅、肖萍、程鹏辉。在此一并表示感谢!
编著者
2006年9月
目 录
第1章 酒店管理系统 1
1.1 系统概述 2
1.1.1 系统功能 2
1.1.2 系统预览 2
1.1.3 系统操作流程 3
1.2 系统设计架构 4
1.2.1 系统架构 4
1.2.2 系统功能模块 4
1.3 数据库的设计和实现 5
1.3.1 数据库需求分析 5
1.3.2 数据库概念结构设计 5
1.3.3 数据表设计 6
1.3.4 数据库的表间关系 8
1.4 公用模块编写 9
1.4.1 数据库连接编写 9
1.4.2 ST_PageBase类和ST_ModuleBase类 9
1.4.3 界面设计 12
1.4.4 登录系统 17
1.5 房间类型管理 20
1.5.1 房间类型管理界面的搭建 20
1.5.2 房间类型的修改和删除 25
1.5.3 房间类型的添加 29
1.6 房间信息管理 33
1.6.1 房间信息管理界面 33
1.6.2 房间信息的修改和删除 37
1.6.3 房间信息的添加 41
1.7 房间经营管理 46
1.7.1 房间使用界面的搭建 46
1.7.2 房间使用的信息查询 51
1.8 客户信息和经营状况信息的查询 52
1.8.1 客户信息的查询 52
1.8.2 房间经营状况信息的查询 56
1.9 关键技术剖析:配置文件解析 61
1.9.1 配置概述 61
1.9.2 Web.Config中的配置信息 61
1.9.3 自定义Web.Config文件配置节 63
1.10 小结 64
第2章 连锁中心配送系统 65
2.1 系统概述 66
2.1.1 系统功能 66
2.1.2 系统预览 66
2.1.3 系统操作流程 67
2.2 系统设计架构 67
2.2.1 系统架构 68
2.2.2 系统功能模块 69
2.3 数据库的设计和实现 70
2.3.1 数据库需求分析 70
2.3.2 数据库概念结构设计 70
2.3.3 数据表设计 71
2.3.4 数据库的表间关系 72
2.4 公用模块编写 73
2.4.1 数据库连接编写 73
2.4.2 界面头尾设计 73
2.4.3 界面主体框架 77
2.4.4 登录系统 77
2.5 管理员:用户管理 80
2.5.1 用户信息的查看、修改和删除 80
2.5.2 用户信息的添加 84
2.6 管理员:其他模块管理 87
2.6.1 产品模块的管理 87
2.6.2 连锁店模块的管理 91
2.6.3 销售统计管理 95
2.7 连锁分店用户管理 100
2.7.1 分店用户管理信息查看 101
2.7.2 用户密码的修改 102
2.7.3 产品信息维护 105
2.7.4 连锁店信息查看 108
2.7.5 连锁店销售统计 110
2.8 关键技术剖析:ASP.NET之C#中的异常处理 112
2.8.1 基础知识 112
2.8.2 结构化异常处理 112
2.8.3 C#中常见异常类 113
2.9 小结 114
第3章 企业信息管理系统 115
3.1 系统概述 116
3.1.1 系统功能 116
3.1.2 系统预览 116
3.1.3 系统操作流程 116
3.2 系统设计架构 118
3.2.1 系统架构 118
3.2.2 系统功能模块 118
3.3 数据库的设计和实现 119
3.3.1 数据库需求分析 119
3.3.2 数据库概念结构设计 119
3.3.3 数据表设计 120
3.3.4 数据库的表间关系 121
3.4 公用模块编写 122
3.4.1 数据库连接编写 122
3.4.2 数据层类 122
3.4.3 界面控件设计 125
3.4.4 登录页面 129
3.5 管理员界面:新闻管理 130
3.5.1 新闻的添加 130
3.5.2 新闻的删除 133
3.6 管理员界面:产品管理 135
3.6.1 产品的添加 135
3.6.2 产品的更新和删除 138
3.7 管理员界面:用户管理 141
3.7.1 用户管理 141
3.7.2 用户信息的处理 142
3.8 管理员界面:订单管理 144
3.8.1 已处理订单的管理 144
3.8.2 未处理订单的管理 147
3.9 用户界面 150
3.9.1 界面预览 150
3.9.2 新闻列表 153
3.9.3 产品展示 155
3.9.4 订购信息 157
3.9.5 查看订单 160
3.10 关键技术剖析:浅析ADO.NET 163
3.10.1 ADO.NET概述 163
3.10.2 ADO.NET结构 163
3.10.3 ADO.NET连接方式 164
3.11 小结 164
第4章 鲜花预定系统 165
4.1 系统概述 166
4.1.1 系统功能 166
4.1.2 系统预览 166
4.1.3 系统操作流程 167
4.2 系统设计架构 167
4.2.1 系统架构 167
4.2.2 系统功能模块 169
4.3 数据库的设计和实现 169
4.3.1 数据库需求分析 169
4.3.2 数据库概念结构设计 170
4.3.3 数据表设计 171
4.3.4 数据库的表间关系 172
4.4 公用模块编写 173
4.4.1 数据库连接编写 173
4.4.2 界面主体框架 173
4.4.3 登录系统和退出系统 181
4.5 管理员界面:用户信息管理 186
4.5.1 用户信息框架 186
4.5.2 用户信息事件处理 188
4.6 管理员界面:鲜花管理 191
4.6.1 鲜花信息的查看和删除 191
4.6.2 鲜花的添加 196
4.6.3 ST_Flower类 201
4.7 管理员界面:订单管理和信息查找 203
4.7.1 订单信息的查看和处理 203
4.7.2 ST_User类 206
4.7.3 信息查找 207
4.8 一般用户界面 210
4.8.1 购物车 210
4.8.2 收藏栏 219
4.8.3 个人订单 225
4.8.4 查找 229
4.9 关键技术剖析:ADO.NET对象 229
4.10 小结 230
第5章 学生管理系统 231
5.1 系统概述 232
5.1.1 系统功能 232
5.1.2 系统预览 232
5.1.3 系统操作流程 233
5.2 系统架构和模块分析 233
5.2.1 两层架构的模式 233
5.2.2 系统模块分析 235
5.3 数据库分析的设计与实现 236
5.3.1 数据库需求分析 236
5.3.2 数据库概念结构设计 236
5.3.3 数据库表的设计和创建 237
5.3.4 存储过程的创建 239
5.3.5 数据库的表间关系 242
5.4 公用模块编写 242
5.4.1 数据库公用模块 242
5.4.2 界面头尾控件设计 243
5.4.3 页面导航设计 243
5.4.4 界面主体框架 243
5.5 管理员用户:学生管理界面 244
5.5.1 学生信息的查看、修改和删除 244
5.5.2 学生信息的添加 250
5.6 管理员用户:班级管理界面 255
5.7 管理员用户:教师管理界面 258
5.7.1 教师信息的查看、修改和删除 258
5.7.2 管理员的添加与查看 259
5.7.3 密码修改页面 261
5.8 管理员用户:课程管理界面 264
5.8.1 课程信息的查看、修改和删除 264
5.8.2 课程信息的添加 266
5.8.3 授课的分配 268
5.8.4 必修课的添加 271
5.8.5 授课信息的显示 271
5.8.6 授课修改 273
5.9 管理员用户:学生选课管理界面 276
5.10 管理员用户:成绩管理界面 277
5.10.1 成绩的统计和查询 277
5.10.2 新成绩的录入 280
5.11 学生用户 282
5.11.1 查看个人信息 282
5.11.2 查看课程信息 284
5.11.3 选课 285
5.11.4 成绩查询 290
5.11.5 密码修改 292
5.12 关键技术剖析:ADO.NET操作SQL Server数据库 293
5.13 小结 295
第6章 学生选课系统 296
6.1 系统概述 297
6.1.1 系统功能 297
6.1.2 系统预览 297
6.1.3 系统操作流程 298
6.2 系统设计架构 299
6.2.1 系统架构 299
6.2.2 系统功能模块 299
6.3 数据库的设计和实现 300
6.3.1 数据库需求分析 300
6.3.2 数据库概念结构设计 301
6.3.3 数据表设计 302
6.3.4 数据库的表间关系 304
6.4 公用模块编写 304
6.4.1 数据库连接编写 304
6.4.2 数据库操作组件 305
6.4.3 界面头尾设计 305
6.4.4 界面主体框架 305
6.4.5 登录系统和退出系统 309
6.5 管理员用户:院系管理 311
6.5.1 院系信息的查看和删除 311
6.5.2 院系信息的添加和修改 314
6.6 管理员用户:其他模块管理 317
6.6.1 专业模块的管理 317
6.6.2 教师模块的管理 320
6.6.3 课程模块的管理 324
6.6.4 学生模块的管理 328
6.7 教师用户 333
6.7.1 查看担任课程课表 333
6.7.2 查看担任课程的选课学生信息 335
6.8 学生用户 337
6.8.1 个人信息维护 337
6.8.2 选课 340
6.8.3 选课信息查看 344
6.9 关键技术剖析:ASP.NET基于Forms的身份验证 347
6.10 小结 348
第7章 Blog 349
7.1 系统概述 350
7.1.1 系统功能 350
7.1.2 系统预览 350
7.1.3 系统操作流程 351
7.2 系统设计架构 352
7.2.1 系统架构 352
7.2.2 系统功能模块 353
7.3 数据库的设计和实现 354
7.3.1 数据库需求分析 354
7.3.2 数据库概念结构设计 354
7.3.3 数据表设计 355
7.3.4 数据库的表间关系 357
7.4 公用模块编写 357
7.4.1 数据库连接编写 357
7.4.2 界面头尾设计 358
7.4.3 界面主体框架 360
7.4.4 登录系统 360
7.5 管理员界面:类型管理 362
7.5.1 类型管理界面 362
7.5.2 类型的修改和删除 364
7.5.3 类型的添加 366
7.6 管理员界面:文章管理 366
7.6.1 文章信息管理界面 366
7.6.2 文章的修改和删除 368
7.6.3 添加文章 371
7.6.4 评论的删除 374
7.7 管理员界面:链接管理 377
7.7.1 链接管理界面 377
7.7.2 链接的删除 380
7.7.3 链接的添加 380
7.8 管理员界面:留言管理 381
7.8.1 留言管理界面 381
7.8.2 留言回复 383
7.8.3 留言删除 383
7.9 普通用户界面 384
7.9.1 博客列表 385
7.9.2 推荐文章 388
7.9.3 网友回应 388
7.9.4 友情链接 389
7.9.5 个人资料 390
7.10 关键技术剖析:ASP.NET中XML的应用 394
7.10.1 XML基础知识 394
7.10.2 C#操作XML 395
7.11 小结 398
第8章 网络考试系统 399
8.1 系统概述 400
8.1.1 系统功能 400
8.1.2 系统预览 400
8.1.3 系统操作流程 401
8.2 系统设计架构 402
8.2.1 系统架构 402
8.2.2 系统功能模块 403
8.3 数据库的设计和实现 403
8.3.1 数据库需求分析 403
8.3.2 数据库概念结构设计 403
8.3.3 数据表设计 404
8.3.4 数据库的表间关系 405
8.4 公用模块编写 405
8.4.1 数据库连接编写 405
8.4.2 数据操作组件 406
8.4.3 公用界面设计 410
8.4.4 登录系统 410
8.5 管理员界面:科目管理 412
8.5.1 考试科目的查看和删除 412
8.5.2 考试科目的添加和修改 415
8.6 管理员界面:试题管理 418
8.6.1 试题的查看和删除 418
8.6.2 试题的添加和修改 422
8.7 考生界面 427
8.7.1 答题 427
8.7.2 密码修改及考生注册 431
8.8 关键技术剖析:ASP.NET状态管理 437
8.8.1 简介 437
8.8.2 客户端的状态管理 437
8.8.3 服务器端的状态管理 439
8.9 小结 440
第9章 网络书店系统 441
9.1 系统概述 442
9.1.1 系统功能 442
9.1.2 系统预览 442
9.1.3 系统操作流程 443
9.2 系统设计架构 444
9.2.1 系统架构 444
9.2.2 系统功能模块 444
9.3 数据库的设计和实现 445
9.3.1 数据库需求分析 445
9.3.2 数据库概念结构设计 446
9.3.3 数据表设计 447
9.3.4 数据库的表间关系 449
9.4 公用模块编写 450
9.4.1 数据库连接编写 450
9.4.2 数据库操作组件 450
9.4.3 界面头尾设计 451
9.4.4 登录系统 451
9.4.5 解决方案结构 453
9.5 管理员用户:订单管理 454
9.5.1 订单的展示 454
9.5.2 订单的发货和作废 456
9.6 管理员用户:图书管理 462
9.6.1 图书类别的显示 463
9.6.2 图书类别和图书信息的管理 464
9.7 用户界面 478
9.7.1 图书的显示 479
9.7.2 添到购物车 481
9.7.3 购物车信息 483
9.7.4 订单的生成 487
9.7.5 个人信息的修改 492
9.7.6 订单的查看 496
9.8 关键技术剖析:ASP. NET数据缓存 498
9.8.1 简介 498
9.8.2 页面级输出缓存 498
9.8.3 用户控件级输出缓存 499
9.8.4 缓存API: 使用Cache对象 499
9.9 小结 500
附录A ASP.NET开发入门 501
A.1 Microsoft SQL Server的安装 501
A.2 建立数据库 503
A.3 建表 504
A.4 编写程序 505
A.5 运行程序 507
附录B 光盘案例的配置方法 508
B.1 附加数据库 508
B.2 在IIS中搭建站点 509
B.3 站点的运行 511