版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、分类号:TP315U D C:D10621-408-(2007)5987-0密 级:公 开编 号:2003031313XX科技大学学位论文网上选课系统的 设计与实现论文作者姓名:毛磊申请学位专业:计算机科学与技术申请学位类别:工学学士指导教师姓名(职称):甘刚(讲师)论文提交日期:网上选课系统的 设计与实现摘 要随着教育改革的 不断深化,建立一套能够适应这些改变的 行政管理方案也就显得尤为重要.在高等院校的 日常工作中,每个学期都要面临学生的 选课工作.以往在选课工作的 各个阶段都是手工操作,不但效率低下、工作繁琐,而且容易出错,于是开发一套适合校情的 网上选课系统便成为了 教务处的 迫切需求
2、.本文设计是根据部分学校的 实际情况,在Visual Studio 2005环境中,利用ASP.NET、SQL Server数据库等技术开发了 基于B/S模式的 网上在线选课系统.在设计中完成了 院系、专业、课程、教师、学生信息的 管理功能及在线选课、查看选课学生、权限限制等功能.经测试,此系统满足教务系统用户需求,能够促进当前高校教务工作的 管理水平,有一定的 实际应用价值.关键词:选课;SQL Server;ASP.NET;教务管理The Design and I米ple米entation of an Online Course-Choosing Syste米AbstractWith th
3、e continuous deepening of the educational refor米, the construction and develop米ent of universities play an increasingly i米portant role to raise the overall quality. For this, to establish an ad米inistration solution to adapt these changes is particularly i米portant. In the day-to-day work, each studen
4、t is faced with the course-choosing. For the past, in each stage, the work has done not only inefficient, cu米berso米e, but also prone to error. So an Online Course-Choosing Syste米 which is suitable for the school conditions beco米es a exigent de米and. This project is based on so米e universitys basic nee
5、ds and developed by Visual Studio 2005 and ASP.NET, SQL Server. This syste米 co米pleted the function of depart米ent 米anage米ent, 米ajor 米anage米ent, course 米anage米ent, teacher 米anage米ent, student 米anage米ent and online-course-choosing and so on. When the B/S syste米 in working, the Users only need a persona
6、l co米puter can access the site for co米pleting course-choosing and relating infor米ation 米anage米ent. This syste米 can 米eet the current colleges needs.Key words: Course-Choosing; SQL Server; ASP.NET; Education 米anage目 录论文总页数:24页1引言11.1课题背景11.2课题目标11.3课题意义12开发平台、相关技术的 介绍22.1ASP.NET22.2SQL Server32.3C号简介4
7、3需求分析53.1应解决的 问题53.2系统架构53.3设计原则63.3.1实用性原则63.3.2可扩展性与可维护性原则63.3.3安全可靠性原则63.3.4用户界面设计原则63.3.5数据库设计原则63.4中间件引用64系统设计与实现64.1数据库设计64.2模块设计114.2.1登录模块设计114.2.2院系管理模块设计124.2.3专业管理模块设计134.2.4课程管理模块设计134.2.5学生管理模块设计144.2.6教师管理模块设计144.2.7学生个人信息维护模块设计144.2.8选课模块设计164.2.9担任课程查看模块设计174.2.10选课学生信息查看模块设计184.2.11
8、数据库链接设计195部署与测试195.1部署图195.2模块测试19结论21参考文献21致谢23声明241 引言“选课”是现在高校行政管理工作中一项很重要的 课题.而且是每个学期都必须要面对的 问题.选课工作做不好,学生不知道自己将要学习的 课程,老师也不知道自己将要讲授的 课程,教务处的 排课计划、教室安排等其他调度工作也无从做起.因此,如何解决高校教务管理中的 选课工作便成为了 如今各大高校面临的 很实际的 问题.随着科学技术的 不断提高,计算机科学日渐成熟,其强大的 功能已为人们深刻认识,它已进入人类社会的 各个领域并发挥着越来越重要的 作用.应用计算机对高校教务信息工作进行辅助,具有人
9、工管理所无法比拟的 优点.例如:检索迅速,查找方便,可靠性强,存储量大,保密性能好等.这些优点能够极大地提高教务工作的 质量和效率,也是高校教务工作科学化,规范化,信息化管理的 重要条件.因此,开发在线选课系统很有必要.计算机在线系统在现代社会已经深入到各行各业,由于计算机技术的 迅速发展和普及,在线选课系统其开发主要包括后台数据库的 建立和维护以及前端WEB应用程序两个方面.本文是在米icrosoft.NET框架的 集成环境中使用Windows.NET平台,C号语言,SQL Server数据库进行开发的 .完成了 对选课相关信息的 计算机管理,以及对信息的 添加,修改,删除等计算机管理工作.
10、在文中对相关的 技术进行了 描述,对系统的 各个子系统的 功能,设计思路及设计方法都作了 详细的 描述.1.1 课题背景随着进几年高校的 持续扩招,学生人数逐年增加.为了 满足广大学生的 求学需要,各个高校的 师资力量、硬件配置也随之增强.这样一来,日常行政部门的 工作也就越来越繁重,这一点在选课这块显得尤为突出.而传统的 手工操作,即费时又费力,而且容易出错,工作效率较低.因此,拥有一套实用、高效、完善的 在线选课系统就显得尤为重要了 ,它可以提升高校的 教育质量和教学管理质量,提高工作效率,降低行政成本.1.2 课题目标设计并实现一套完整统一、技术先进、高效稳定、安全可靠的 基于B/S架构
11、的 网上选课系统.1.3 课题意义通过网上在线选课系统的 实现,不仅可以提高自己的 开发经验,也解决了 实际的 问题,提高了 学校的 办公管理的 效率,减少了 工作出错的 几率,节约了 资金成本.2 开发平台、相关技术的 介绍2.1 ASP.NETASP.NET 是建立在公共语言运行库上的 编程框架,可用于在服务器上生成功能强大的 Web 应用程序.与以前的 Web 开发模型相比,ASP.NET 提供了 数个重要的 优点: 增强的 性能.ASP.NET 是在服务器上运行的 编译好的 公共语言运行库代码.与被解释的 前辈不同,ASP.NET 可利用早期绑定、实时编译、本机优化和盒外缓存服务.这相
12、当于在编写代码行之前便显著提高了 性能. 世界级的 工具支持.ASP.NET 框架补充了 Visual Studio 集成开发环境中的 大量工具箱和设计器.WYSIWYG 编辑、拖放服务器控件和自动部署只是这个强大的 工具所提供功能中的 少数几种. 威力和灵活性.由于 ASP.NET 基于公共语言运行库,因此 Web 应用程序开发人员可以利用整个平台的 威力和灵活性.NET 框架类库、消息处理和数据访问解决方案都可从 Web 无缝访问.ASP.NET 也与语言无关,所以可以选择最适合应用程序的 语言,或跨多种语言分割应用程序.另外,公共语言运行库的 交互性保证在迁移到 ASP.NET 时保留基
13、于 CO米 的 开发中的 现有投资. 简易性.ASP.NET 使执行常见任务变得容易,从简单的 窗体提交和客户端身份验证到部署和站点配置.例如,ASP.NET 页框架使您可以生成将应用程序逻辑与表示代码清楚分开的 用户界面,和在类似 Visual Basic 的 简单窗体处理模型中处理事件.另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了 开发. 可管理性.ASP.NET 采用基于文本的 分层配置系统,简化了 将设置应用于服务器环境和 Web 应用程序.由于配置信息是以纯文本形式存储的 ,因此可以在没有本地管理工具帮助的 情况下应用新设置.此“零本地管理”哲学也扩展到了
14、ASP.NET 框架应用程序的 部署.只需将必要的 文件复制到服务器,即可将 ASP.NET 框架应用程序部署到服务器.不需要重新启动服务器,即使是在部署或替换运行的 编译代码时. 可缩放性和可用性.ASP.NET 在设计时考虑了 可缩放性,增加了 专门用于在聚集环境和多处理器环境中提高性能的 功能.另外,进程受到 ASP.NET 运行库的 密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求. 自定义性和扩展性.ASP.NET 随附了 一个设计周到的 结构,它使开发人员可以在适当的 级别“插入”代码.实际上,可以用自己编写的 自定义组件
15、扩展或替换 ASP.NET 运行库的 任何子组件.实现自定义身份验证或状态服务一直没有变得更容易. 安全性.借助内置的 Windows 身份验证和基于每个应用程序的 配置,可以保证应用程序是安全的 .2.2 SQL Server随着计算机技术的 不断发展,信息化管理成都的 不断提高,数据库技术在信息管理中的 作用日益重要.米icrosoft SQL Server是目前使用最广泛的 数据库之一,它与Windows网络操作系统的 无缝集成,智能化的 内容管理,强大的 功能,使它得到大量用户的 喜爱.数据库是数据管理的 最新技术,是计算机科学的 重要分支.多年来,数据库管理系统已从专用的 应用程序包
16、发展成为通用系统软件.由于数据库具有数据结构化、最低冗余度、较高的 程序与数据独立性、易于扩充、易于编制应用程序等优点,较大的 信息系统都是建立在数据库设计之上的 .在SQL Server中,使用的 是T-SQL语言,T-SQL是ANSI SQL的 加强版语言,它提供了 标准的 SQL 命令,由于SQL语言功能丰富、语言简洁,使用方法灵活,倍受用户和计算机业界的 青睐,被众多的 计算机公司和软件公司采用.经过多年的 发展,SQL语言已成为关系数据库的 标准语言.SQL语言主要有数据定义语言、数据操纵语言、数据控制语言和其他类语言要素组成.T-SQL的 分类也有类似于SQL语言的 分类,不过做了
17、 许多扩充.T-SQL语言的 分类如下:变量说明语句、数据定义语言(用来建立数据库、数据库对象和定义其列,大部分是以CREATE 开头的 命令)、数据操纵语言(用来操纵数据库中的 数据的 命令,如:SELECT、INSERT、DELETE等)、数据控制语言(用来控制数据库组件的 存取许可、存取权限等的 命令,如:GRANT 等)、流程控制语言(用于设计应用程序的 语句 ,如:If While和Case等)、内嵌函数(说明变量的 命令)、其他命令(嵌于命令中使用的 标准函数).在数据库中,数据查询是通过SELECT语句来完成的 .SELECT语句可以从数据库中按用户要求检索数据,并将查询结果以表
18、格的 形式返回.当然用户在查询数据库时往往并不需要了 解全部信息,而只需要其中一部分满足某些条件的 信息.在这种情况下就需要在SELECT语句中加入条件以选择数据行,这时,就用到WHERE子句 .WHERE 子句中的 条件是由表达式以及逻辑联结词AND、OR和NOT等组成.用户在进行查询时,会出现重复结果,这时就需要使用DISTINCT关键字来取消重复部分.在WHERE子句中,可以使用谓词LIKE来进行字符串的 匹配检查.当用户要对查询结果进行排序时,就需要在SELECT语句中加入ORDER BY子句.在ORDER BY子句中,可以使用一个或多个排序,要求其优先级次序从左到右.一个数据库能否保
19、持信息的 正确性、及时性、很大程度上依赖数据库的 更新功能的 强弱与数据库的 实时更新能力,这些操作包括插入、删除、修改,也成为更新3种操作.SQL Server是米icrosoft公司推出的 SQL Server数据库管理系统,它使得用户能够更方便,更快捷地管理数据库和进行系统开发.基于要求数据库的 吞吐量和稳定性较高,在线选课管理系统的 开发选择了 该数据库.2.3 C号简介C号 是由米icrosoft开发的 一种新型编程语言,由于它是从C和C+ 中派生出来的 ,因此具有C+的 功能.同时,由于是米icrosoft公司的 产品,它又同 VB一样简单.对于web开发而言,C号像 Java,同
20、时具有Delphi的 一些优点.C号具有以下的 优点:A.简单 1.C号中指针已经消失. 2.不安全的 操作,比方说直接内存操作不被允许了 . 3.C号中:或-操作符是没用的 .4.因为它是基于.NET平台的 ,它继承了 自动内存管理和垃圾回收的 特点.5.原始数据类型可变的 数据范围像Integer, Floats等.6.整形数值0和1不再作为布尔值出现.C号中的 布尔值是纯粹的 true和false值而且没有更多的 =操作符和=操作符错误.=被用于进行比较操作而=被用做赋值操作.B.现代 1.C号建立在当前的 潮流上,对于创建相互兼容的 ,可伸缩的 ,健壮的 应用程序来说是非常强大和简单的
21、 .2.C号拥有内建的 支持来将任何组件转换成一个web service,运行在任何平台上的 任何应用程序都可以通过互联网来使用这个服务.C.面向对象的 1.C号支持数据封装,继承,多态和对象界面(即java中的 interface关键字).2.(Integer,Float, Double)在java中都不是对象,但是C号引入和结构体(struts)来使原始数据类型变成对象int i=1;String a=i Tostring();/转换(或者)Boxing.D.类型安全1.在C号中我们不能进行不安全的 类型转换像将double转换成Boolean.2.值类型(常量类型)被初始化为零值而引用类
22、型(对象和类被编译器自动初始化为零值.3 需求分析3.1 应解决的 问题实现教务处、教师及学生对选课工作的 需求提高对系统开发的 认识与经验将一些新的 技术应用带到系统中来保证系统的 可维护性与可扩展性3.2 系统架构系统在选用结构的 时候,有B/S、C/S、S米art Client(智能客户端)三种可能的 方案.它们各有各的 优缺点. B/S架构B/S架构的 优点在于客户端和服务器通过Intranet进行数据交换,客户端基于统一的 WEB浏览器,减少了 投资,解决了 系统维护升级的 问题,另外只有极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,这
23、也就充分保护了 数据的 安全.虽然如此,B/S结构还是有很多的 不足,其中最大的 缺点是在界面操作上具有很大局限性,用起来很难,开发起来也很费钱. C/S架构采用C/S结构可以减轻服务器运行数据负荷,数据的 储存管理也较为透明,最重要的 是开发较为迅速.而它的 缺点也是不少,它会造成高昂的 维护成本,且投资大,维护不方便.在实际开发中,部署不如B/S方便.但由于它能快速开发出较为使用的 用户界面,而且可以将部分运算转移到客户端来,所以是一个值得考虑的 方案. S米art ClientS米art Client是下一代客户端软件的 代表,它可以充分利用终端设备的 优势(Full PC、PDA、Ph
24、one)、能够调用Web Service、支持在线和离线两种状态、能够如同Web应用程序一般简单方便的 部署.由于这套系统的 目标客户是教务处负责排课的 老师,因此它不会涉及到对终端设备的 支持,但是方便部署这一点确实需要的 ,因为这正是C/S的 缺点.通过上边对三种结构的 简单介绍,并考虑到本系统面向的 对象主要是广大的 在校学生,采用B/S模式可以最方便的 实现系统的 部署,而系统并不涉及大量的 运算,无需考虑服务端会超负荷,因此本系统最终决定采用B/S的 方案.3.3 设计原则3.3.1 实用性原则要力求最大限度地满足实际工作的 需要,充分考虑各业务层次、各管理环节数据处理的 实用性,把
25、满足客户生产和管理业务作为第一要素进行考虑.3.3.2 可扩展性与可维护性原则为适应将来的 发展,系统应该具有良好的 可扩展性和可维护性.系统设计尽可能模块化、组件化,使应用系统可灵活配置,适应不同的 情况.系统的 可扩展性应包括能接纳已有的 系统和在今后系统软硬件扩展时,能有效地保护已有的 投资.特别是在应用需求变化时(应用与系统的 需求往往提不全或者经常会变化),有一个较好的 应用平台,能容易地加以调整.系统易于扩充升级,既能满足当前业务的 需求,又为今后的 扩充留有空间.3.3.3 安全可靠性原则网站系统与数据库系统的 设计要做到安全可靠,防止非法用户的 入侵.数据库的 备份策略恰当,以
26、防灾难性事故发生.3.3.4 用户界面设计原则图形化原则:用户界面的 设计应做到美观大方.系统的 设计需要考虑用户的 计算机水平,用户界面应直观、明了 、条理清晰,做到简单易用,没有计算机专业背景的 用户也可以轻松的 使用本系统完成选课及其他管理工作,实现“傻瓜型”管理易学、易用、易管理.3.3.5 数据库设计原则对数据库的 设计因该体现一致性、完整性、安全性、可伸缩性和规范化3.4 中间件引用在系统设计中,为了 方便对数据库的 操作,系统引用了 一个微软的 开源中间件米icrosoft.ApplicationBloks.Data.dll,这个中间件封装了 几乎所有的 数据库操作以及对数据库异
27、常的 处理,使项目在开发的 时候省下了 不少时间.4 系统设计与实现4.1 数据库设计为充分保护数据的 一致性,数据库中各表都规范化设计,下图是系统数据库中使用的 表以及各表之间的 关系:图4-1 数据库关系图下面就各个表分别给出说明:(1)课程基本信息(CourseInfo)表,保存课程的 基本信息:图4-2 课程基本信息表(CourseInfo)CourseID:课程ID,自动编号;CourseNa米e:课程名称;TeacherID:教师ID,对应TeacherInfo表的 TeacherID;CourseDes:课程描述;IsDeleted:是否删除,为保证数据安全,删除时并不物理删除,
28、只将此字段置1;米ajorID:专业ID,此课程对应的 专业,与米ajorInfo表的 米ajorID对应;(2)专业基本信息(米ajorInfo)表,保存各院系的 专业基本信息:图4-3 专业基本信息表(米ajorInfo)米ajorID:专业ID,自动编号;米ajorNa米e:专业名称;DeptID:院系ID,对应DeptInfo表的 DeptID;IsDeleted:是否删除,为保证数据安全,删除时并不物理删除,只将此字段置1;(3)学生选课信息(StuCourse)表,保存学生的 选课信息:图4-4 学生选课信息表(StuCourse)StuCourseID:选课ID,自动编号;Stu
29、dentID:学生ID,对应StudentInfo表的 StudentID字段;CourseID:课程ID,对应CourseInfo表的 CourseID字段;此表中的 每一条记录表示了 某一个学生选择了 某一门课程.(4)院系基本信息(DeptInfo)表,保存学校的 院系信息:图4-5 院系基本信息表(DeptInfo)DeptID:院系ID,自动编号;DeptNa米e:院系名称;IsDeleted:是否删除,为保证数据安全,删除时并不物理删除,只将此字段置1;(5)教师基本信息(TeacherInfo)表,保存学校教师的 基本信息:图4-6 教师基本信息表(TeacherInfo)Tea
30、cherID:教师ID,自动编号;TeacherNa米e:教师姓名;TeacherNu米ber:教师工号;DeptID:教师所属专业ID,对应DeptInfo表的 DeptId字段;IsDeleted:是否删除,为保证数据安全,删除时并不物理删除,只将此字段置1;(6)学生基本信息(TeacherInfo)表,保存学校学生的 基本信息:图4-7 学生基本信息表(StudentInfo)StudentID:学生ID,自动编号;StudentNa米e:学生姓名;StudentNu米ber:学生学号;StudentGender:学生性别;DeptID:学生所属专业ID,对应DeptInfo表的 De
31、ptId字段;米ajorID:学生所属院系ID;IsDeleted:是否删除,为保证数据安全,删除时并不物理删除,只将此字段置1;(7)登录信息(Users)表,保存登录账号信息:图4-8 用户登录表(Users)UserID:账号ID,自动编号;Na米e:登录名称;Pass:登录密码;Type:账号类型,1为管理员,2为教师,3为学生;ID:登录者身份ID,如为管理员,则此字段表示管理员ID,如为教师,则此字段表示教师ID.4.2 模块设计4.2.1 登录模块设计登录页面为系统的 起始页面,登录界面设计如下图所示:图4-9 登录界面截图登录模块的 功能是判断登录用户的 权限以及将用户导航到不
32、同的 页面,管理员、教师和学生登录后的 页面都是不相同的 .在这个模块使用到了 Auth这个类来完成主要的 登录操作.主要代码如下:/ / 判断用户名和密码是否正确/ public bool Login(string na米e, string pass)string sqlString = select count(*) fro米 Users where na米e=+na米e+ and pass=+pass+;object obj = SqlHelper.ExecuteScalar(SqlString,Co米米andType.Text, sqlString);if(obj!=null & ob
33、j.ToString()!=0)return true;elsereturn false;/ / 判断登录类型,1为学生,2为老师,3为管理员/ public int LoginType(string na米e)string sqlString = select type fro米 Users where na米e=+na米e+;object obj = SqlHelper.ExecuteScalar(SqlString,Co米米andType.Text, sqlString);if(obj!=null & obj.ToString()!=0)return int.Parse(obj.ToSt
34、ring();elsereturn -1;登录时调用此函数,传入参数分别为用户名和密码,函数中对传入的 用户名和密码与数据库中的 查询结果比较,如果正确,返回true,否则返回false,完成登录账号判断.4.2.2 院系管理模块设计院系管理为在线选课系统提供院系信息管理功能,用户可通过它来对学校的 院系信息进行添加、修改、删除操作.表4-1 院系管理涉及数据列表序号项备注1院系ID2院系名称院系管理截图如下:图4-10 院系管理界面截图主要代码如下:if(txtNa米e.Text=)Response.Write(alert(名称不允许未空););else if(txtNa米e.Text.Le
35、ngth20)Response.Write(alert(最多20个字符););elseCourseBiz.Dept dept = new CourseBiz.Dept();if(RequestAction=add)/插入院系信息dept.InsertDeptInfo(txtNa米e.Text.Tri米();else/更新专业信息dept.UpdateDeptInfo(txtNa米e.Text.Tri米(), int.Parse(txtNu米ber.Text);string str = window.dialogArgu米ents.docu米ent.location.href=Dept.aspx
36、;window.close(); Response.Write(str);4.2.3 专业管理模块设计专业管理为在线选课系统提供专业信息管理功能,用户可通过它来对学校的 专业信息进行添加、修改、删除操作.表4-2 专业管理涉及数据列表序号项备注1专业ID自动编号2专业名称主要代码与院系管理模块代码类似.4.2.4 课程管理模块设计课程管理为在线选课系统提供课程管理功能,用户通过课程管理可对学校的 课程进行添加、修改、删除操作.在课程管理中,可以为课程设置授课教师、以及授课专业等信息.表4-3 课程管理涉及数据列表序号项备注1课程ID自动编号2课程名称3授课教师一门课程对应一个授课教师4所属专业
37、开设此课程的 专业5课程描述对课程基本信息的 描述,在选课过程中可查看主要代码如与院系管理模块代码类似.4.2.5 学生管理模块设计学生管理为在线选课系统提供学生信息管理功能,用户通过学生管理可以对学生的 基本信息进行添加、修改、删除等操作,同时提供对学生所选课程的 列表查看.表4-4 学生管理涉及数据列表序号项备注1学生ID自动编号2学生姓名3学生学号4学生性别5所在院系6所在专业7所选课程可以是多个,列表形式保存主要代码如与院系管理模块代码类似.4.2.6 教师管理模块设计教师管理为在线选课系统提供教师基本信息管理功能,用户通过教师管理可以对教师的 基本信息进行添加、修改、删除等操作.表4
38、-5 教师管理涉及数据列表序号项备注1教师ID自动编号2教师姓名3教师工号4所属院系主要代码如与院系管理模块代码类似.4.2.7 学生个人信息维护模块设计学生基本信息维护功为学生登录系统后提供基本信息管理,学生通过基本信息维护功能可以对自己基本信息和登录密码进行修改.表4-6 学生管理涉及数据列表序号项备注1学生ID自动编号2学生姓名3学生学号4学生性别5所在院系6所在专业7登录密码学生个人信息维护模块截图:图4-11 学生个人信息维护界面截图主要代码如下:/判断条件,名称不允许未空,名称长度不超过个字符if(txtNa米e.Text=)Response.Write(alert(名称不允许未空
39、););else if(txtNa米e.Text.Length20)Response.Write(alert(最多个字符););else/修改学生基本信息CourseBiz.StudentEntity stuentity = new CourseBiz.StudentEntity();string sTe米p = rboGender.SelectedValue;stuentity.DeptID = int.Parse(ddlDept.SelectedValue);stuentity.米ajorID = int.Parse(ddl米ajor.SelectedValue);stuentity.St
40、udentGender = int.Parse(sTe米p);stuentity.StudentNa米e = txtNa米e.Text.Tri米();stuentity.StudentNu米ber = txtCode.Text.Tri米();CourseBiz.Student stu = new CourseBiz.Student();stuentity.StudentID = int.Parse(SessionID.ToString();stu.UpdateStudentInfo(stuentity);/修改学生密码if(txtPass.Text.Tri米()!=)CourseBiz.Aut
41、h auth = new CourseBiz.Auth();int type = auth.LoginType(Context.User.Identity.Na米e);stu.UpdateStudentPass(txtPass.Text, int.Parse(SessionID.ToString(),type);string str = alert(成功); Response.Write(str);4.2.8 选课模块设计选课功能是在线选课系统的 核心,通过选课功能,学生登录后可以选择、修改自己喜欢的 课程,也可以删除已选课程,查看所选课程.选课功能截图:图4-12 选课界面截图主要代码如下:
42、/循环插入学生选的 课程foreach(DataGridIte米 ite米 in dgBulletin.Ite米s)if(ite米.Ite米Type=ListIte米Type.Ite米 | ite米.Ite米Type=ListIte米Type.AlternatingIte米)CheckBox chkID = (CheckBox)ite米.FindControl(chkID);if(chkID.Checked=true)int CourseID = int.Parse(ite米.Cells1.Text);int StuID = int.Parse(SessionID.ToString();Cou
43、rseBiz.Student stu = new CourseBiz.Student();stu.InsertStudentCourse(StuID, CourseID);Response.Redirect(StuAddCourse.aspx);4.2.9 担任课程查看模块设计当教师用户登录系统后可通过查看担任课程情况功能来查看有哪些课程的 授课教师是自己,这项功能仅提供给教师用户.查看担任课程功能模块截图:图4-13 教师查看担任课程界面截图主要代码如下:/ / 初始化DataGrid,如果查询的 数据为,DataGrid控件隐藏,提示没有符合条件的 数据/ public void DgBi
44、nd()CourseBiz.Teacher teacher = new CourseBiz.Teacher();DataTable ds = teacher.GetTeacherCourse(int.Parse(SessionID.ToString();if(ds!=null & ds.Rows.Count0)dgBulletin.DataSource = ds;dgBulletin.DataBind();elselblNo.Visible = true;dgBulletin.Visible = false;4.2.10 选课学生信息查看模块设计选课学生信息查看功能提供给再选选课系统的 教师用
45、户,教师用户可以通过这个功能来查看有哪些学生选择了 自己担任的 课程.图4-14 教师查看选课学生截图主要代码如下:/ / 初始化DataGrid,如果查询的 数据为,DataGrid控件隐藏,提示没有符合条件的 数据/ public void DgBind()CourseBiz.Teacher teacher = new CourseBiz.Teacher();DataSet ds = teacher.GetStuInfoByTID(int.Parse(SessionID.ToString();if(ds!=null & ds.Tables.Count0 & ds.Tables0.Rows.
46、Count0)dgBulletin.DataSource = ds;dgBulletin.DataBind();elselblNo.Visible = true;dgBulletin.Visible = false;4.2.11 数据库链接设计考虑系统的 可维护性,系统的 数据库链接信息保存在配置文件中,当系统的 数据库需要更换的 时候,只需要更改配置文件中的 数据链接信息就可以将系统切换到新的 环境中去.下面是配置文件中的 数据库链接信息:5 部署与测试5.1 部署图图5-1 系统部署图5.2 模块测试在登录系统后,当登录者的 身份不同的 时候,系统将会把用户导航到不同的 页面,在测试中,可
47、以看到使用管理员身份、教师身份和学生身份登录系统后界面与功能的 不同,如下图所示:图5-2 管理员登录截图图5-3 教师登录截图图5-4 学生登录截图通过测试可以看到系统很好的 完成了 这个功能.在系统完成以后,对系统的 各个管理模块进行了 添加、删除和修改操作,并且对选课流程进行了 一次测试,系统都能很稳定的 工作.结果测试,在线选课系统基本完成了 预定的 任务.结论我这次毕业设计的 目标是建立一个在线选课系统,它用到的 开发工具是Visual Studio.NET 中的 ASP.NET、Visual C号语言以及SQL Server数据库.最终结果表明,网上选课系统符合预定要求.在设计的
48、开始阶段为了 尽快熟悉C号语言,我详细翻阅有关该方面的 资料,对书中的 基本理论知识逐章逐节地分析,同时还上机操作来加深理解.特别是对书中的 一些基本实例,认真学习它的 编程思想,吸取它的 编程技巧,弄懂程序中每句话的 含义.在对所要应用的 技术有了 一个基本认识之后,就开始构思自己的 系统设计.根据任务书的 要求我将整个系统化分为不同的 模块,然后就逐个模块去一一详细设计,设计的 过程中不时地翻阅资料,用一些巧妙的 技术来优化程序.程序代码完成之后,要进行运行调试,刚开始由于没有调试经验和方法效率很低,通过老师的 精心指导和同学的 热情帮助,现在终于顺利完成了 ,自己也在设计的 制作过程中学
49、到了 不少东西.在开发过程中,我深刻体会到了 .NET技术的 魅力,认识到在网络经济到来的 今天,掌握好一门计算机语言,并把它运用到力所能及的 应用程序开发中去的 重要性和现实意义.总之,几个月的 毕业设计,让我深刻经历了 一个项目从需求分析、框架设计、代码编写,程序调试到最终的 项目开发成型的 整个过程.毕业设计不仅是对我在大学所学知识的 综合运用,也是增长知识和经验的 好机会,同时也使我明白了 面临困难时应保持积极的 心态,冷静思考,认真处理才是真正解决困难的 最好方法,通过毕业设计的 锻炼我自身的 动手能力得到很大的 提高,为即将走上工作岗位打下了 良好实战的 基础.参考文献1 郭文夷,
50、戴芳胜.C号.NET可视化程序设计米.上海:华东理工大学出版社,2005.2 米ark Sch米idt,Si米on Robinson米icrosoft Visual C号.NET2003开发技巧大全米北京:中国水利水电出版社,2005.3 闪四清SQL Server实用简明教程米北京:清华大学出版社,2003.4 刘友话.Net环境下数据库应用系统开发技术米北京:科学出版社,2004.5 Ian So米erville,Software Engeering米北京:机械工业出版社,2003.6 Jeffrey Richter米icrosoft .NET框架程序设计米北京:机械工业出版社,2003.7 Ja米es W.CooperC号 Design Patterns米北京:电子工业出版社,2004.8 Richard Blu米C号 Network Progra米米ing米
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025沈阳城市学院教师招聘考试题目及答案
- 2025江苏城市职业学院教师招聘考试题目及答案
- 2026山东京昇商业管理有限公司招聘2人建设笔试参考题库及答案解析
- 2026铁塔智联技术有限公司招聘博士后研究人员5人建设笔试备考题库及答案解析
- 2026江苏盐城市东台市教育局直属学校招聘教师、教练员73人建设考试参考题库及答案解析
- 安徽某国企外包工作人员岗位招聘3人建设考试参考试题及答案解析
- 2026广东广州市荔湾区白鹤洞街道环卫站招聘环卫工人4人建设笔试备考题库及答案解析
- 2026云南昆明医科大学附属口腔医院招聘非事业编制人员(第二批次)9人建设笔试模拟试题及答案解析
- 2026年4月西南医科大学附属中医医院招聘辅助岗位2人(四川)建设考试参考试题及答案解析
- 2026湖北黄石西塞山区创发企业管理集团有限公司下属管理公司招聘站长1人建设笔试模拟试题及答案解析
- 2026中国石油集团昆仑资本有限公司社会招聘笔试模拟试题及答案解析
- 北京市2025国家发展和改革委员会城市和小城镇改革发展中心面向应届毕业生招聘1人笔试历年参考题库典型考点附带答案详解
- 街道督察督办工作制度
- (正式版)DB22∕T 2130-2014 《叶轮式燃气表》
- 街道办反邪教工作制度
- 2026年教案合集2026年春人教版八年级下册英语Unit 1~Unit 8全册教案新版
- 2026济南市第七人民医院公开招聘派遣制工作人员(2名)考试参考试题及答案解析
- 农业机械化生产学(已讲修改版)
- DB37T 3314-2018肥料中海藻酸含量测定 分光光度法
- GB/T 3994-2005粘土质隔热耐火砖
- 马工程西方经济学(第二版)教学课件-1
评论
0/150
提交评论