ImageVerifierCode 换一换
格式:DOC , 页数:25 ,大小:609.50KB ,
资源ID:1131236      下载积分:10 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 微信支付   
验证码:   换一换

加入VIP,免费下载资源
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.wodocx.com/d-1131236.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于ASP.NET的在线考试系统.doc)为本站会员(精***)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(发送邮件至2622162128@qq.com或直接QQ联系客服),我们立即给予删除!

基于ASP.NET的在线考试系统.doc

1、在线考试系统泉 州 师 范 学 院毕业论文(设计)题目基于ASP.NET的在线考试系统 继续教育 学院 计算机科学 系 计算机科学与技术 专业 09 级 班学生姓名 xxx 学号 xxxxxx指导老师 xxx 职称 讲师 教务处 制基于ASP.NET的在线考试系统继续教育学院 计算机科学与技术专业 xxxxxx xxx指导教师xxx 讲师 【摘要】: 本系统充分利用学校现有的计算机软,硬件资源以及网络资源,实现无纸化考试,避 免了传统考试中的不足. 本文以 Internet 为平台, 研究了基于 Web 考试系统的设计与实现, 包括系统需求分析,系统功能设计,数据库设计以及系统功能的实现,应用

2、的技术主要有 动态网页技术和数据库技术.系统实现下列功能:考生基本资料管理,题库管理,试卷管 理,成绩管理以及学生在线考试等功能.此网上考试系统可以随机生成考试试卷,有强大 的题库管理功能,可以进行试题的增加,修改,删除操作;随机组卷,管理员设定试卷的开始时间等参数,系统按照预定的参数从题库中随机抽取试题,组成多套试题,使所有学生使用不同的试卷,这样可以防止考试作弊的现象。【关键词】: 在线考试系统 随机生成试卷 B/S Asp.Net 目 录引言1第一章 所用开发语言及技术平台简介22.1 Microsoft Visual Studio 2005 介绍22.2 Microsoft Visua

3、l Studio 2005具有的优点22.3 ASP.NET技术简介2第二章 系统所需配置22.1运行环境配置22.1.1 硬件环境22.1.2 软件环境22.2 Windows Server 2003简介32.3 IIS简介32.3.1 IIS的安装32.3.2 新建网站32.3.3 IIS虚拟目录的管理32.3.4 启用父路径4第三章 需求分析43.1系统的用户分类43.2 数据库需求分析43.3模块框架图4第四章 数据库及模块设计54.1概要设计54.1.1数据库概论及SQL SERVER 2000简介54.2系统E-R图54.3模块数据库设计64.4详细设计74.4.1数据信息准备74

4、.4.2程序数据流图84.5系统分析和设计任务负责的模块功能及内容84.5.1登录模块和主界面模块需求分析84.5.2登录模块和主界面模块设计系统性能要求9 4.5.3负责模块中系统的功能分析94.5.4功能模块及实现94.5.5模块数据分析9第五章 系统实现95.1登录模块设计95.2管理员管理模块125.3学生登录考试模块14第六章 总结20致谢20参考文献20引言随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善,各个行业都在积极使用现代化的手段,不断改善服务质量,提高工作效率,这些都在很大程度上给我们学者企业提出越来越严峻的挑战。 信息科技在全社会的飞速发展与

5、普及,把世界上所有电脑联接起来的网络技术已日渐成熟,每天都有海量的信息在各种电脑网络上驰骋。特别是INTERNET网的普及,它改变了传统传输媒体的传递方式,而且是一个非常廉价的交互式国际通信媒体。越来越多的学者开始参加各种各样的考试,而这种考试大多都是网络考试。网络考试有很多的优点,比如可以节省很多的改卷时间,节省大量的资源,减少了人工改卷的误差,考题丰富更能检测出学生的能力。因此网络在线考试将成为未来考试的趋势。第一章 所用开发语言及技术平台简介2.1 Microsoft Visual Studio 2005 介绍Visual Studio 是微软公司推出的开发环境。是目前最流行的 Wind

6、ows 平台应用程序开发环境。2005 年,微软发布了 Visual Studio 2005。.NET 字眼从各种语言的名字中被抹去,但是这个版本的 Visual Studio 仍然还是面向 .NET 框架的(版本2.0)。它同时也能开发跨平台的应用程序,如开发使用微软操作系统的手机的程序等。总体来说是一个非常庞大的软件,甚至包含代码测试功能。是一个开发 ASP.net 2.0的工具。2.2 Microsoft Visual Studio 2005具有的优点Visual Studio.NET 企业框架和模板提供了关键的基础结构和内容,以在组织内部定义和提供最好的惯例和开发策略。这允许高级开发人

7、员和体系结构工程师定义应用程序初始工具包、策略以及体系结构指导,使经验不足的开发人员可以用来构建极其复杂的应用程序。客户可分发这些应用程序蓝图以及构建应用程序所需的部件和说明,从而极大地提高开发人员构建复杂 XML Web 服务和应用程序的效率。 2.3 ASP.NET技术简介ASP.NET的前身ASP技术,是在IIS 2.0上首次推出(Windows NT 3.51),当时与 ADO 1.0 一起推出,在IIS 3.0 (Windows NT 4.0)发扬光大,成为服务器端应用程序的热门开发工具,微软还特别为它量身打造了Visual InterDev开发工具,在1994年到2000年之间,A

8、SP技术已经成为微软推展Windows NT 4.0平台的关键技术之一,数以万计的ASP网站也是这个时候开始如雨后春笋般的出现在网络上。它的简单以及高度可定制化的能力,也是它能迅速崛起的原因之一。因为ASP.net是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上(笔者到现在为止只知道它只能用在Windows 2000/2003 Server/VISTA/7上)。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.net的Web应用中。ASP.net同时也是language-independent(语言独立化)的,所以,你

9、可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C+和Java的结合体),VB,Jscript,C+、F+。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.net。第二章 系统所需配置2.1 运行环境配置2.1.1 硬件环境服务器和客户端使用主流硬件配置均能运行本系统。建议配置:INTEL E7500 CPU(或同级的AMD CPU),4G内存,320G硬盘。2.1.2 软件环境服务器:操作系统:Windows Server 2003 + IIS 6.0+.NET Framework2.0。要求启

10、用父路径。数据库:采用SQL2000,运行于服务器端。客户端:操作系统:Windows 2000/XP/Vista/7。浏览器:Internet Exploer,Firefox,Google Chrome,Opera等。建议分辨率:1024*768以上2.2 Windows Server 2003简介Windows Server 2003操作系统是在Windows 2000 Server操作系统基础上发展而来的。与Windows 2000类似,Windows Server 2003操作系统软件也分成多个版本针对不同用户发布。包括Standard Edition(标准版)、Enterprise

11、Edition(企业版)、Datacenter Edition(数据中心版)、Web Edition(网络版)四个版本,每个版本均有32位和64位两种版本。Windows Server 2003默认安装后,将不启用任何服务模块,用户需要对Windows Server 2003进行服务器角色配置,来开启相应的服务模块。不起用任何服务模块的默认安装可以减少系统受攻击的风险。Windows Server 2003中的AD也做了增强和改进,对NT/XP系统的升级迁移提供了良好的帮助。2.3 IIS简介2.3.1 IIS的安装Windows Server 2003默认安装是不带IIS 6.0的,要安装I

12、IS,选择“开始管理工具管理您的服务器”,打开“管理您的服务器向导”,选择“添加或删除角色”,选择“应用服务器(IIS,ASP.NET)”,选择“万维网服务”(其余根据自己需要选择设置。)(如右图)IIS 6.0安装默认不支持ASP,需要按照以下步骤开启:控制面板管理工具IIS(Internet 服务器)Web服务扩展Active Server Pages允许;控制面板管理工具IIS(Internet 服务器)Web服务扩展在服务端的包含文件允许。建议取消上传文件200K限制。以免成绩文件大小超过200K时不能导入,步骤如下:关闭IIS Admin Service服务;打开WINDOWSsys

13、tem32inetsrv下的Metabase.xml文件;找到AspMaxRequestEntityAllowed = 204800项,修改为需要的值如1024000;重启World Wide Web Publishing Service服务。2.3.2 新建网站打开“开始管理工具Internet信息服务(IIS)管理器”,选择“本地计算机网站”,单击鼠标右键,在右键菜单中选择“新建网站”,输入网站描述,配置IP地址和端口,由于默认网站的端口是80,新建的网站就不要与已用的端口冲突,按照向导配置,即可完成配置。2.3.3 IIS虚拟目录的管理新建虚拟目录:打开“开始管理工具Internet信息

14、服务(IIS)管理器”,选择“本地计算机网站默认网站”,单击鼠标右键,在右键菜单中选择“新建虚拟目录”,按照向导配置,即可完成虚拟目录的创建。删除虚拟目录:打开“开始管理工具Internet信息服务(IIS)管理器”,选择“本地计算机网站默认网站”,单击鼠标右键,在右键菜单中选择“删除”,按照向导配置,即可完成虚拟目录的删除。2.3.4 启用父路径打开“开始管理工具Internet信息服务(IIS)管理器”,选择“本地计算机网站默认网站”,单击鼠标右键,在右键菜单中选择“属性”,选择“主目录配置选项启用父路径”第三章 需求分析3.1系统的用户分类。本系统共分成两个界面:一个界面用于老师及管理员

15、登录,主要负责进行基本资料、题库、试卷、成绩的管理以及查询等;另外一个界面用于考生用户登录,主要负责在线考试。从总体上考虑,系统应该实现下列功能:对管理员来说,包括试卷管理、题库管理、成绩管理等。(1)试卷管理:管理员可以对库中已有的试卷进行修改和删除,添加新试卷等。(2)题库管理:管理员可以对题库中的试题进行三种基本操作:添加新的考题、删除旧有考题、修改原有考题,其中试题类型包括判断题、填空题、选择题;对于每种类型的试题,教师可以设置题干、答案等属性。(3)成绩管理:管理员可以查看考生的考试成绩,包括考试人数及成绩等。(4)学生管理:管理员可以对用户的资料进行查询、删除。对普通用户来说,包括

16、在线考试。在线考试:学生可以任选时间进行在线测试,考试结束后,系统会根据已有的标准答案进行在线判卷,考生可以立刻知道考试成绩。3.2 数据库需求分析针对一般考试系统的需求,设计如下所示的数据项和数据结构: 管理员信息,包括:ID、姓名、密码、加入时间等。 普通用户信息,包括:学号、姓名、性别、密码、院系、专业、注册时间、找回密码问题、找回密码答案等。 题库信息,包括:包括:ID、题干、类型、加入时间、课程、院系、题套、选项、答案、分值等。 判断题信息,包括:判断题编号、题干、正确答案及分值等。 填空题信息,包括:填空题编号、题干、正确答案及分值等。 选择题信息,包括:单(多)选题编号、题干、正

17、确答案、备选项(A、B、C、D)及分值等。 成绩信息,包括:包括:ID、学号、课程、成绩、考试提交时间等。本系统应该建立一个稳定的后台数据库系统,通过该数据库管理整个考试系统所需的信息(用户信息、题库信息、考试信息等)。本系统还应该包括学生和教师的账号、后台数据库的安全机制、考试过程的控制机制。3.3模块框架图 图3-1 模块框架图第四章 数据库及模块设计4.1概要设计4.1.1数据库概论及SQL SERVER 2000简介微软开发的SQL SERVER 2000是在Windows95/98/2000及Windows NT平台中应用的关系型数据库管理系统,可以通过各种数据库对象对数据进行控制和

18、管理,不论用户创建的独立桌面数据库适用于个人、部门还是整个企业,SQL SERVER可以为管理数据生成易于使用的数据库,SQL SERVER 2000不仅拥有众多传统数据库管理软件所具备的功能,同时还进一步增强了与web页集成,能够更方便的共享跨越各种平台和不同用户级别的数据。SQL SERVER 2000并不需要数据库管理者具有很高的专业程序设计水平,一般的用户完全可以利用SQL SERVER 2000创建出一个功能强大的数据库系统,使用SQL SERVER 2000数据库管理系统除非执行复杂或专业的操作,一般情况下用户无需编写程序代码,只需要在企业管理器中操作就可以完成大多数数据的管理工作

19、。4.2系统E-R图图4-1 系统E-R图4.3模块数据库设计tb_Administrator表(图4-2):主要功能是用来设置管理员的信息,包括:ID、姓名、密码、加入时间。 图4-2 tb_Administrator表tb_Student表(图4-3):主要功能是记录每个学生的相关信息,包括:学号、姓名、性别、密码、院系、专业、注册时间、找回密码问题、找回密码答案。图4-3 tb_Student表 tb_Questions表(图4-4):主要功能是记录题库信息,包括:ID、题干、类型、加入时间、课程、院系、题套、选项、答案、分值。 图4-4 tb_Questions表tb_StuResul

20、t表(图4-5):主要功能是记录每个学生考试结果信息,包括:ID、学号、课程、成绩、考试提交时间。图4-5 tb_StuResult表4.4详细设计4.4.1数据信息准备1、登录界面模块要进行“登录界面”模块验证就必须拥有该账号的信息:如:用户名、密码。如果身份正确的话就可以对整个系统的功能进行操作。不过学生和管理员各自享有不同的操作权限。添加学生可以通过外部注册,将新的数据各项信息录入到后台数据库中,这样新增的学生就可以访问系统,进行考试。2、主界面模块主界面模块操作分为两级操作分别是:管理员、学生。要进入主界面操作必须通过“登录界面”模块验证(相关的用户和密码匹配)后,才可以对整个系统的进

21、行如下操作:学生信息维护、课程维护、院系维护、考题维护、成绩维护等操作。4.4.2程序数据流图模块功能流程图如图4-6所示:用户登录调用数据库?Y/N系统主界面考生管理员在线考试退出系统图4-6系统功能流程图4.5系统分析和设计任务负责的模块功能及内容4.5.1登录模块和主界面模块需求分析 考生信息修改以及删除; 能够实现对考生信息进行查询和编辑管理; 能够进行学生考试成绩查询功能; 学生能够进行查询成绩功能; 提供注册和找回密码操作; 提供添加试题和管理试题功能; 提供添加维护专业课程信息功能; 能够进行数据库维护的功能4.5.2登录模块和主界面模块设计系统性能要求: 系统安全、可靠; 功能

22、齐全; 操作方便、界面美观友好; 易于维护和扩充;4.5.3负责模块中系统的功能分析:密码设置:每个人均有自己的密码,可以修改自己的密码。 权限设置:各个人员有不同的操作限制。防止越权使用。4.5.4功能模块及实现系统管理登陆界面设计、系统主界面设计,考试界面设计三个主要模块。登录界面模块:防止非管理人员进入系统进行破坏。用以核对用户身份。主界面设计模块:是对模块集成,系统的管理和操作及使用权限。考试界面设计模块:是对随即抽取题目进行安排设计。4.5.5模块数据分析通过对负责的模块分析,可以得出该模块涉及一个实体及数据项有:学生信息包含:学号、姓名、性别、注册时间、院系、专业、密码(隐藏)管理

23、员信息包含:名称、密码(隐藏)题库信息包括:学号、题干、选项、答案、分值、加入时间第五章 系统实现5.1登录模块设计图5-1 登录界面用户在启动应用程序时,首先弹出该模块窗口,要求用户首先选择身份,然后输入登录名和密码及随即验正码,程序对输入得用户名和密码及验证码进行验证。如果验证通过,则读取该用户的操作权限传递给主程序,这时主程序根据不同的权限给予不同的操作,否则就提示相关错误信息。public partial class Default : System.Web.UI.Page Datacon dataconn = new Datacon(); protected void Page_Lo

24、ad(object sender, EventArgs e) Session.RemoveAll(); if (!IsPostBack) Random rnd = new Random(); /生成随即验证码 this.labValidate.Text = rnd.Next(1000,9999).ToString(); /数字在1000-9999之间 /=登录按钮= protected void Button1_Click(object sender, EventArgs e) if (txtValidate.Text != labValidate.Text) Response.Write(a

25、lert(验证码错误);location=javascript:history.go(-1); /提示输入的验证码是不是有误。 else if (cblAdminLog.Items0.Selected = true) this.getcom(1); /如果为真就执行下面1代码 else this.getcom(2); /否则执行代码2 /=登录控制= /通过查找数据库里面的管理员表里面的是否为管理员字段来判断登入的用户是否是管理员,如果/是跳转到管理员界面,如果不是则跳转到学生界面。 private void getcom(int i) SessionStuName = this.txtUse

26、rName.Text; /记录登陆的信息 SqlConnection con = dataconn.getcon(); con.Open(); /打开数据连接 SqlCommand com=con.CreateCommand(); switch (i) case 1: / 代码1 com.CommandText = select count(*) from tb_Administrator where Name= + txtUserName.Text + and PWD= + txtPwd.Text + ; int count1 = Convert.ToInt32(com.ExecuteSca

27、lar();/获取SQL语句的值 强制转换成数值类型 if (count1 0) ApplicationName = txtUserName.Text;/成功 ApplicationPWD = txtPwd.Text;/成功 Page.Response.Redirect(HouAdmin/admin.aspx); /执行成功后跳转到管理页面 else Response.Write(alert(用户名或密码有误!);location=javascript:history.go(-1); return; break; case 2: /代码2 com.CommandText = select co

28、unt(*) from tb_Student where ID= + txtUserName.Text + and PWD= + txtPwd.Text + ; int count2 = Convert.ToInt32(com.ExecuteScalar(); if (count2 0) ApplicationID = txtUserName.Text; ApplicationPWD = txtPwd.Text; Page.Response.Redirect(QianUser/zaixian_kaoshi.aspx); /执行成功后跳转到学生页面Default.aspx.cs部分主要代码代码5

29、.2管理员管理模块图5-2 管理员管理维护界面图该界面可以管理管理员信息,学生信息,专业信息,课程信息,题套信息,管理考试成绩,管理考试题目,添加试题(图5-3),关闭或开始考试等。可以对相应的信息进行增加、删除、修改等操作。图5-3 添加试题界面添加试题模块主要对试题进行添加,只有管理员身份才可以拥有这个窗体的使用权限,管理员可以对试题进行添加。部分主要代码:/试题的添加,通过查询数据库得到的提套专业,然后在按所选择的类型进行试题的添加。 protected void btnSelect_Click(object sender, EventArgs e) Sessiondrop1 = ddl

30、Profession.Text;/专业 Sessiondrop2 = ddlLesson.Text;/课程 Sessiondrop3 = ddlQueName.Text;/题套 if (this.ddlLesson.Text = ) Page.Response.Write(alert(请选择考试课程);location=javascript:history.go(-1); return; Page.Response.Redirect(InsertShiTi.aspx); protected void ddlProfession_SelectedIndexChanged(object sende

31、r, EventArgs e) dataconn.ecDropDownList(ddlLesson, select * from tb_Lesson where ofProfession= + ddlProfession.SelectedValue.ToString() + , Name, id); dataconn.ecDropDownList(ddlQueName, select a.*,b.ofProfession from tb_TaoTi as a join tb_Lesson as b on a.LessonID=b.ID where a.LessonID= + ddlLesson

32、.SelectedValue.ToString() + and b.ofProfession= + ddlProfession.SelectedValue.ToString() + , Name, id); /插入试题执行代码 protected void ddlLesson_SelectedIndexChanged(object sender, EventArgs e) dataconn.ecDropDownList(ddlQueName, select * from tb_TaoTi where LessonID= + ddlLesson.SelectedValue.ToString()

33、+ , Name, id); protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e) if (TreeView1.SelectedNode.Text=退出系统) Response.Write(window.close();location=javascript:history.go(-1); /退出系统清除session记录 insert_shiti.aspx.cs 部分主要代码5.3学生登录考试模块图5-4 学生登录考试模块该界面主要是对学生登录考试时等候考试的界面。上面有考生登录的学号,以及现在系统时

34、间。当老师开放了考试以后就可以点击开始,如果考试还没开放则点击开始的时候会弹出提示框提示考试还未开始。图5-5 学生考试界面图该界面主要是学生进行考试时候的界面。在考试顶部有考试剩下的时间及考生的学号,以及答题的说明规则。部分主要代码:/随机从题库中抽取设定好的题目数量,然后按题目的类型自动生成试卷,试卷格式按代码设定好的行列/进行显示。 Random rd = new Random();/抽题随机数 Datacon con = new Datacon(); static int QuestionID = new int50; /一共50题 public int que_lessonid =

35、0; public int que_professionid = 0; protected bool validate(int a) for (int i = 0; i QuestionID.Length; i+) if (QuestionIDi = a) return false; return true; if (GetNum() /抽题 for (int i = 0; i 50; i+) int id = rd.Next(DateTime.Now.Millisecond) % MaxID; if (validate(id) if (i 20)/20道单选题 string sql = se

36、lect que_subject,que_type,optionA,optionB,optionC,optionD,que_score from tb_Questions where id= + id.ToString() + and que_type=单选题 ; if (!GetQuestions(sql, i) i-; continue; else QuestionIDi = id; protected bool GetQuestions(string sql, int id)/生成试题页面及布局,采用表格行列形式生成 SqlDataReader read = DataConnection

37、.DataRead(sql); if (read != null & read.Read() TableRow tRow = new TableRow(); TableCell tc = new TableCell(); tc.Text = read.GetValue(0).ToString();/试题题目 tc.ColumnSpan = 5; tRow.Cells.Add(tc); Table1.Rows.Add(tRow); tRow = new TableRow(); tc = new TableCell(); tc.Text = 试题分数: + read.GetValue(6).ToS

38、tring();/试题分数 /tc7.ColumnSpan = 1; tRow.Cells.Add(tc); tc = new TableCell(); tc.Text = read.GetValue(1).ToString();/试题类型 /tc8.ColumnSpan = 3; tRow.Cells.Add(tc); Table1.Rows.Add(tRow); tRow = new TableRow(); tc = new TableCell(); tc.Text = A: + read.GetValue(3).ToString();/答案A tRow.Cells.Add(tc); tc = new TableCell(); tc.Text = B: + read.GetValue(4).ToString();/答案B tRow.Cells.Add(tc); tc = new TableCell(); tc.Text = C: + read.GetValue(5).ToString();/答案C tRow.Cells.Add(tc); tc = new TableCell()

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922