ASP.NET程序设计情境式教程(第2版)pdf/doc/txt格式电子书下载
本站仅展示书籍部分内容
如有任何咨询
请加微信10090337咨询
书名:ASP.NET程序设计情境式教程(第2版)pdf/doc/txt格式电子书下载
推荐语:
作者:朱香卫,张建等编
出版社:电子工业出版社
出版时间:2015-10-01
书籍编号:30468205
ISBN:9787121267697
正文语种:中文
字数:123256
版次:2
所属分类:教材教辅-大学
版权信息
书名:ASP.NET程序设计情境式教程(第2版)
作者:朱香卫 张建
ISBN:9787121267697
版权所有 · 侵权必究
前言
ASP.NET作为.NET Framework的一部分,具有.NET Framework所拥有的一切优势,是Web动态网站开发的首选。目前,很多高职高专院校的ASP.NET程序设计课程的模式一直沿用传统学科体系的课程模式,与企业需求的Web编程职业能力要求有较大的差距。教育部提出高等职业教育应“以服务为宗旨,以就业为导向”树立办学理念,这就要求高等职业教育的课程内容设置要与企业岗位需求相衔接。
任何一个软件公司的从事Web开发的新人都要经过“岗前培训”、“试用”和“转正”3个阶段(行动领域),每个阶段都有“需求分析”、“软件设计”、“编码”、“测试”和“部署、维护”5个工作过程。以“软件”为载体,将以上的行动领域转化为ASP.NET的学习领域,在该学习领域下,设计“信息发布系统”、“网上选课系统”和“网上考试系统”3个学习情境。这3个学习情境分别是由“岗前培训”、“试用”和“转正”3个行动领域阶段转化而来的,在组织这3个学习情境的教学过程中都是按“基于工作过程系统化,项目引领,任务驱动”的原则进行的。
通过学习情境1“信息发布系统”,学生主要获得“编码能力”;通过学习情境2“网上选课系统”,学生主要获得“程序设计能力”;通过学习情境3“网上考试系统”,学生主要获得“系统开发能力”。这3个学习情境构成的学习领域是以软件开发职业能力为核心的,学生通过对这3个学习情境的学习,即将软件公司新人的“岗前培训”、“试用”和“转正”前移到学校,从而使学生在校期间就积累程序设计经验、积累项目经验,为学生综合素质与企业要求“零距离”打下坚实的基础。
本书不仅有利于高职高专学生更好地适应任职的需要,而且有利于增强高校学生发展的潜力。与其他同类教材相比,本书具有以下特点。
(1)本书充分考虑学生的认知规律,化解知识难点。由于ASP.NET程序设计会涉及学习难度较大的知识和技能,所以本书以面向3个实际应用的项目任务来组织教材内容,通过3个递进的学习情境任务来驱动学生学习。
(2)全书内容由浅入深,并辅以大量的实例操作步骤,所以可操作性与实用性强。
(3)本书定位准确、重点突出,语言精练,通俗易懂。
(4)本书的作者是由有丰富的高校教学经验的“双师型教师”和有企业项目工作经验的“项目经理”组成的。作者按照工学结合的编写思路编写教材,每个情境都按照软件开发的5个工作过程进行编写,每个工作过程都有相应的工作任务,每个工作任务都设计了相应的“任务描述”、“技能目标”、“操作要点与步骤”和“相关知识点”等环节,让读者在反复动手实践的过程中,学会应用所学知识解决实际问题,力求达到“授人以鱼,不如授之以渔”的目标,同时达到举一反三的目的。
(5)每个学习情境后都设有为了巩固本学习情境知识和技能的练习园地,在练习园地中设有“基础题”、“实战题”和“挑战题”,目的是为不同层次的学生提供“在学中做,在做中学”的机会。
本书在第1版的基础上,进行了以下修订工作。
(1)开发环境采用Visual Studio 2010、.NET Framework 4.0以及ASP.NET 4.0,数据库系统采用SQL Server 2008。
(2)对3个学习情境中数据库表的结构进行了优化,并建立了相应的视图,从而提高了系统的业务处理能力。
(3)3个学习情境采用三层架构实现,分别是UI、BLL、DAL。其中UI(User Interface,用户界面层)为表现层,即Web层;BLL(Business Logic Layer,业务逻辑层)为处理业务的层;DAL(Data Access Layer,数据访问层)为数据操作层。让学生亲身体会到采用三层架构能更好地实现开发中的分工,有利于组件的重用,从而提高软件的开发的效率。
(4)修订后的“操作要点与步骤”更能体现程序的开发过程和步骤,令读者充分体会教师对学生操作的详细指导过程。
(5)根据以上的变化,对知识点进行了适当的调整。
本书配套有电子课件、源代码等学习资源,读者可以登录华信教育资源网(www.hxedu.com.cn)免费下载。
本书由朱香卫、张建主编;王乃国、顾伟国副主编。参与本书编写工作的还有章虹、毛辉、王建忠、谢莹、戎思伟、徐向前、朱超等老师,新电信息科技(苏州)有限公司软件顾问徐枫参与教学项目的开发工作。江苏瀚远科技股份有限公司项目经理袁子明为本书的编写提供了宝贵的企业技术资料;在此一并表示深深的敬意和谢意。
为了方便教师教学,下表给出了教学建议学时,教师根据实际教学可酌情调整。
由于时间仓促,加之编者水平有限,虽然我们力求完美,但书中难免有疏漏和错误等不尽如人意之处,敬请读者不吝指正。
编 者
学习情境1 在线考试—信息发布系统
【学习目标】按“需求分析”、“软件设计”、“编码”、“测试”和“部署、维护”软件开发的5个工作过程进行学习情境1“信息发布系统”的学习。学生通过对“信息发布系统”学习情境的学习,从而完成软件公司新人“岗前培训”阶段的工作。“信息发布系统”是第1个学习情境,之所以实现这个系统,是为了发布选课和考试信息的公告。按照认知规律,在此学习情境中安排了基础性的学习内容:Label、TextBox、DropDownList、Button、HyperLink和LinkButton等标准控件;Repeater数据绑定控件;RequiredFieldValidator、CompareValidator和ValidationSummary等验证控件。在学习情境1“信息发布系统”的所有页面对应的代码中都用到了数据库连接等操作。因此,在学习情境1中会涉及到ADO.NET关于数据库操作方面的知识。另外,为了实现该系统的文字、图片的编辑和发布等实际工作,在学习情境1中使用了第三方FreeTextBox控件,从而使系统更具实用性。
1.1 任务1:需求分析
软件开发分为5个工作过程,即“需求分析”、“软件设计”、“编码”、“测试”和“部署、维护”,也称为软件开发的生命周期。
需求分析是软件开发的起始阶段,也是软件开发最重要的阶段,因为它将直接决定整个软件开发的成败。软件开发的目的是为了满足用户的需求,为了达到这个目的,软件开发人员必须充分理解用户对目标系统的需求。软件的开发首先要做的是确定系统需求,即系统的功能。
用户期望做什么,在需求阶段就应该将用户的功能需求描述清楚。在面向对象的分析方法中,可以使用用例图和时序图来描述。
用例图(User Case)是被称为参与者的外部用户所能观察到的系统功能的模型图,主要用于对系统、子系统或类的功能行为进行建模。
时序图(Sequence Diagram)亦称为序列图,它通过描述对象之间发送消息的时间顺序,显示多个对象之间的动态协作。它可以表示用例的行为顺序,当执行一个用例行为时,时序图中的每条消息对应了一个类操作引起转换的触发事件。
任务1描述
按照软件开发要求,完成“信息发布系统”的需求分析。
技能目标
① 能掌握软件的需求分析方法;
② 能熟练运用建模软件(如Visio、Rational Rose)对系统进行需求分析,并画出系统功能模块图、用例图、时序图。
信息发布系统需求描述如下:
根据用户的要求,需要将选课、考试、放假等学校的相关消息进行显示并能查看信息的详细情况;同时信息发布的后台管理员应具有对信息类别进行维护、管理的功能;对发布的信息进行有效的管理,包括对信息进行编辑修改、删除等功能。
根据用户的要求,信息发布系统完成的主要任务如下。
(1)信息类别及相应信息的显示。当进入主页时,应该能够根据数据库中存放的信息,在信息显示区列出信息标题列表,并且每个信息标题都应该提供超链接。
(2)信息详细内容显示。当单击信息显示区的信息标题后,就可以跳转到相应的信息详细内容的页面,让用户对这个信息有更详细的了解。
(3)在主页面左部显示用户登录窗口。在该窗口中有3个文本框分别用来输入用户的账号、密码及验证码,并选择用户身份,输入完成后单击确定按钮,如果通过管理员身份验证,则进入信息发布系统的后台管理页面。
(4)信息类别后台管理。信息发布系统的管理员根据用户的需求随时向数据库的信息类别表中添加信息的类别名称及编号。管理员还可以随时编辑修改信息类别名称及编号,并根据实际情况停用或启用相应的信息类别。
(5)信息后台管理。信息发布系统的管理员根据用户的最新公告随时向数据库的信息表中添加用户的相应考试公告及发布日期等信息。管理员还可以随时编辑修改、删除相应的信息公告及发布日期。
信息发布系统的功能模块图如图1-1所示,信息发布系统分为两大模块:一是后台管理模块,二是前台管理模块。后台管理模块分为信息类别管理模块和信息管理模块。其中,信息类别管理模块包括信息类别的增、删、改功能,信息管理模块包括信息的增、删、改功能。前台管理模块包括信息查询列表、相关详细信息显示。
图1-1 系统功能模块图
用例图在需求分析阶段起着重要作用,整个开发过程都是围绕需求阶段的用例进行的。通过对信息发布系统的需求分析及功能模块的划分,开发者已经明确了每个模块的大致功能。根据每个模块的功能,采用用例驱动的分析方法,确定信息发布系统的参与者和用例,并建立用例模型,即用可视化的模型将该系统用直观的图形显示出来。
创建用例图之前首先需要确定参与者。对于信息发布系统,有两类参与者:一类是信息的“浏览者”,在信息发布系统中,只需要浏览信息;另一类是管理信息的“后台管理员”,简称“管理员”,网站需要专门的管理者对网站进行日常维护与管理,所以该系统需要有系统管理员的参与来完成对信息发布系统的维护和管理。
根据需求分析,可以创建如图1-2所示的浏览者用例图和如图1-3所示的管理员用例图。
图1-2 浏览者用例图
图1-3 管理员用例图
1.2 任务2:信息发布系统设计
系统设计作为软件开发流程中需求分析之后的一个环节,通常包括系统概要设计、详细设计和数据库设计。因篇幅原因,本书中的系统设计指的是概要设计和数据库设计。
1.2.1 子任务1信息发布系统总体设计
子任务1描述
按照软件开发要求,完成“信息发布系统”的总体设计。
技能目标
① 能掌握软件的总体设计的方法;
② 能熟练运用建模软件(如Visio、Rational Rose)对系统进行需求分析,并画出系统功能模块图、用例图,根据模块图及用例图画出时序图。
根据信息发布系统的需求分析阶段的“添加信息类别”用例,后台管理员登录进入系统后台后,根据需要添加相应的信息类别,从而完成信息类别添加工作,图1-4为信息类别添加时序图。
图1-4 信息类别添加时序图
根据信息发布系统的需求分析阶段的“修改信息类别”用例,后台管理员登录进入系统后台后,根据需要修改相应的信息类别,从而完成信息类别修改工作,图1-5为信息类别修改时序图。
图1-5 信息类别修改时序图
根据信息发布系统的需求分析阶段的“停用/启用信息类别”用例,后台管理员登录进入系统后台后,根据需要停用/启用相应的信息类别,从而完成停用/启用信息类别工作,图1-6为停用/启用信息类别时序图。
添加信息、修改信息和删除信息的时序图与信息类别添加、修改、停用/启用时序图类似,请参考图1-4、图1-5和图1-6进行设计。
图1-6 停用/启用信息类别时序图
根据信息发布系统的需求分析阶段的“相关详细信息显示”用例,浏览者根据浏览到的相应信息标题,提交显示信息标题请求,浏览者则可以看到详细信息内容,图1-7为显示信息详情时序图。
图1-7 显示信息详情时序图
1.2.2 子任务2信息发布系统数据库设计
设计合理的数据库表的结构,不仅有利于信息发布系统的开发,而且有利于提高信息发布系统的性能。
子任务2描述
根据信息发布系统的需求分析及总体设计开发要求,设计合理、够用、符合规范的“信息发布系统”数据库。
技能目标
① 能掌握数据库表设计方法;
② 能掌握视图建立的方法。
根据信息发布系统的需求分析及总体设计,信息发布系统数据库中涉及的数据表有系统登录表ut_sys_Login、管理员表ut_sys_Admin、信息类别表ut_ips_infoType、信息表ut_ips_infoContent,表结构分别列示如下。
登录表ut_sys_Login主要保存用户登录信息,包括用户登录账号、登录密码、用户角色、登录账号的状态等,表1-1是登录表的结构。
表1-1 登录表(ut_sys_Login)

管理员表ut_sys_Admin主要保存管理员用户详细信息,包括管理员登录系统的ID,管理员姓名,管理员账号的状态等,表1-2是管理员表的结构。
表1-2 管理员表(ut_sys_Admin)

信息类别表ut_ips_infoType主要保存信息的类别,信息类别包括类别编号、类别名称、信息类别的状态等,表1-3是信息类别表的结构。
表1-3 信息类别表(ut_ips_infoType)

信息表ut_ips_infoContent主要保存信息的内容,主要包括信息类别ID、信息标题、信息内容、信息发布用户的ID、信息创建时间、信息发布时间、信息下架时间、修改信息用户的id、修改信息的时间、信息的浏览量、信息是否置顶、信息的状态等。表1-4是信息表的结构。
表1-4 信息表(ut_ips_infoContent)

为了简化SQL语句,提高查询数据的速度,在数据库中建立了供页面查询数据使用的视图uv_ips_infoDetail,该视图是由系统登录表ut_sys_Login、信息类别表ut_ips_infoType、信息表ut_ips_infoContent(即ut_ips_info)建成。uv_ips_infoDetail视图涉及了3张表的字段,如图1-8所示。
图1-8 uv_ips_infoDetail视图涉及的表及字段
视图uv_ips_infoDetail,即虚表,它充分反映了信息发布系统的信息类别及信息的详细情况,该视图(虚表)的结构如表1-5所示。
表1-5 uv_ips_infoDetail视图(虚表)的结构字段说明

续表

1.3 任务3:信息发布系统后台程序实现
1.3.1 子任务1系统整体框架搭建
子任务1描述
新建解决方案“OnlineExam”,该解决方案存放在“D:\\project”目录下。
在解决方案下建立应用程序“Web”,“Web”为表现层,即提供给用户所需要的界面信息;在“Web”下新建文件夹“images”、“css”、“js”、“Admin”和“Front”。再在“Web”内的文件夹“Admin”和“Front”下分别新建“ips”子文件夹。
将应用程序“Web”设置为启动项目,将“Web”内“Default.aspx”网页设置为起始页。
在解决方案下建立应用程序(类库)“IpsCommonDBFunction”,在该类库内新建文件夹“ips”。“IpsCommonDBFunction”类库内文件夹中存放信息发布系统所用到的类,这些类中的方法主要是实现数据库连接以及数据记录增、删、改、查的功能。
技能目标
能熟练运用Microsoft Visual Studio 2010建立解决方案以及在该解决方案下建立项目,学会项目文件的规划管理。
操作要点与步骤
1.创建解决方案
创建一个新的解决方案,命名为“OnlineExam”,该解决方案存放在“D:\\project”目录下,具体步骤如下。
(1)启动Visual Studio 2010,选择“文件”→“新建”→“项目”菜单命令,新建项目菜单如图1-9所示。
图1-9 新建项目菜单
打开后的“新建项目”对话框如图1-10所示。
图1-10“新建项目”对话框
(2)在图1-10左侧“已安装的模板”框中单击“其他项目类型”下面的“Visual Studio 解决方案”,然后在中间部分选中“空白解决方案”;在“名称”对应的文本框内输入“OnlineExam”;在“位置”对应的文本框中输入“D:\\project”或者单击右侧“浏览”按钮,选择路径“D:\\project”;最后单击“确定”按钮,解决方案“OnlineExam”创建成功,如图1-11所示。
图1-11 解决方案创建成功
2.创建项目
在解决方案中,需要创建界面表示层(Web网站)以及表示层和数据库进行交互的项目(IpsCommonDBFunction类库),具体步骤如下。
(1)在图1-11所示窗口中,右击解决方案“OnlineExam”,选择“添加”→“新建项目”菜单命令,如图1-12所示。单击“新建项目”菜单,则会弹出如图1-13所示“添加新项目”对话框。
图1-12 新建项目菜单
图1-13“添加新项目”对话框
图1-14“类库”(IpsCommonDBFunction)创建成功界面
(2)在如图1-13所示的对话框中,在左侧的“已安装的模板”框中选择“Visual C#”模板,然后在中间部分选中“类库”选项;在“名称”对应的文本框中输入“IpsCommonDBFunction”;在“位置”对应的文本框中输入“D:\\project\\OnlineExam”,或者单击“浏览”按钮,选择路径“D:\\project\\OnlineExam”;最后,单击“确定”按钮,则出现如图1-14所示的“类库”(IpsCommonDBFunction)创建成功界面。
(3)重复步骤1与步骤2,在图1-13所示的“添加新项目”对话框左侧的“已安装的模板”框中选择“Visual C#”模板,再单击展开的“Web”选项,然后在图1-13中间部分选中“ASP.NET Web 应用程序”;然后在图1-13“名称”对应的文本框中输入“Web”;在“位置”对应的文本框中输入“D:\\project\\OnlineExam”,或者单击“浏览”按钮,选择路径“D:\\project\\OnlineExam”;最后,单击“确定”按钮,则出现如图1-15所示“ASP.NET Web 应用程序”(Web网站)创建成功的界面。
3.添加Web项目对类库IpsCommonDBFunction的引用
为了在“Web”应用程序中使用“IpsCommonDBFunction”类库中所有类的功能,需要在“Web”应用程序中添加对“IpsCommonDBFunction”类库的引用,具体步骤如下。
(1)在图1-15中右击应用程序“Web”内“引用”选项,出现如图1-16所示的“引用”快捷菜单。
(2)在图1-16中单击“添加引用”菜单,弹出如图1-17所示的“添加引用”对话框。
(3)在图1-17中,选择“项目”标签,然后选择项目名称为“IpsCommonDBFunction”的项目选项,单击“确定”按钮,完成“Web”应用程序对“IpsCommonDBFunction”类库的引用。类库引用成功后,则在“Web”应用程序的引用中会出现如图1-18所示的“IpsCommonDBFunction”类库名称。
图1-15“ASP.NET Web 应用程序”(Web网站)创建成功界面
图1-16“引用”快捷菜单
图1-17“添加引用”对话框
图1-18 引用“IpsCommonDBFunction”类库成功界面
4.设置解决方案下的启动项目及启动项目下的启始页
在实际应用中,一个解决方案中含有多个项目,所以在实际工作中必须设置解决方案中某一个项目作为解决方案的启动项目;如果设置的启动项目中包含网站应用项目,则还需要选择启动网站应用项目的起始页(起始Web窗体),具体步骤如下。
(1)在“OnlineExam”解决方案下右击“Web”项目应用程序,则会出现如图1-19所示的设置启动项目快捷菜单,单击“设为启动项目”菜单,则将解决方案下的“Web”项目设为启动项目,即每次运行“OnlineExam”解决方案时默认启动项目为“OnlineExam”解决方案下的“Web”项目。
(2)在“Web”项目内右击“Default.aspx”选项,则会弹出如图1-20所示的“设为起始页”的快捷菜单,然后单击“设为起始页”的菜单,则“OnlineExam”解决方案每次运行时默认起始页为“Web”网站下的“Default.aspx”网页。
图1-19 设置启动项目快捷菜单
图1-20“设为起始页”的快捷菜单
图1-21 项目结构图
5.其他操作
在实际应用中,需要删除创建项目时多余的文件及文件夹;根据实际需要,进行合理的文件规划,比如在“Web”应用程序中,创建存放样式表的“css”文件夹,创建存放图片的“images”文件夹等,具体步骤如下。
(1)删除多余的文件及文件夹。删除“IpsCommonDBFunction”类库中的“Class1.cs”类;删除“Web”应用程序中多余的文件夹,只需保留“App_Data”文件夹及“Default.aspx”、“Web.config”等文件。
(2)在应用程序“Web”内新建文件夹“images”、“css”、“js”、“Admin”、“Front”,再分别在应用程序“Web”内的文件夹“Admin”和“Front”下均新建子文件夹“ips”;在“IpsCommonDBFunction”类库内新建“ips”和“sys”文件夹;完成以上操作后的项目结构图如图1-21所示。
1.3.2 子任务2系统首页设计
子任务2描述
利用css+div进行页面的设计。利用ASP.NET标准控件Label、TextBox、DropDownList、Button及ASP.NET验证控件RequiredFieldValidator、CompareValidator、ValidationSummary完成信息发布系统首页(默认页)设计及程序实现。
信息发布系统首页既要有登录系统的登录功能,又要有信息的列表展示功能。本任务只实现页面的设计以及登录功能。登录成功后,页面跳转到信息类别管理页面(如图1-26所示)。首页的运行效果图分别如图1-22~图1-26所示,首页的主体页面应该显示信息标题列表信息,在本任务中只显示“信息显示区”,具体实现方法见后续任务。
图1-22 信息发布系统首页
图1-23 输入提示框
图1-24 验证码出错提示框
图1-25 验证未通过提示框
图1-26 验证通过页面
技能目标
① 能熟练运用div对页面进行分层布局,熟练运用css样式表进行页面的设计;
② 能熟练运用ASP.NET常用标准控件Label、TextBox、DropDownList和Button等;
③能熟练运用ASP.NET验证控件RequiredFieldValidator、CompareValidator和ValidationSummary完成对信息的验证;
④ 能运用ADO.NET的知识实现对数据库连接等操作;
⑤ 能熟练运用Page对象的IsPostBack属性对页面加载的处理;
⑥ 能按照代码规范组织编写代码。
操作要点与步骤
1.页面布局设计及css设计
为了设计样式统一的页面,项目采用css+div进行页面布局设计,本项目设计的页面内容区域宽为800px,高为680px,页面自上向下分为Logo区、页面导航区、功能区、内容区及版权声明区,各个区域的尺寸如图1-27所示。
图1-27 页面设计图
页面设计操作步骤如下。
(1)将资源logo_ips.jpg和copyright.jpg复制到images文件夹中。
(2)新建css文件,在Web应用程序中的css文件夹下新建css样式表文件public.css,打开public.css文件,在其中添加各种标签样式和功能区样式。
body标签样式,代码如下。
表格、表格行、表格列标签样式,代码如下。
按钮样式,代码如下。
定义页面容器样式,代码如下。
定义Logo区内容样式,代码如下。
定义导航区样式,代码如下。
定义页面中间部分及中间部分的功能区和内容区样式,代码如下。
定义功能区样式,代码如下。
定义内容显示区样式,代码如下。
定义版权声明区样式,代码如下。
2.DefauIt.aspx页面设计
(1)修改head标签内网页标题,将网页标题改为“在线考试——信息发布子系统”。
(2)引入层叠样式表public.css文件。为避免图片文件路径混乱,本系统引入资源采用绝对路径
....
本站仅展示书籍部分内容
如有任何咨询
请加微信10090337咨询