毕业论文Asp.net考试系统方案_第1页
毕业论文Asp.net考试系统方案_第2页
毕业论文Asp.net考试系统方案_第3页
毕业论文Asp.net考试系统方案_第4页
毕业论文Asp.net考试系统方案_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 . PAGE2 / NUMPAGES57 . 摘 要随着计算机网络的迅速发展,传统的考试方式面临着改革,而网络考试则是一个很重要的发展方向。在线考试系统可以借助于Internet进行,考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。本在线考试系统是利用微软最新的.net平台并用B/S结构的模式和Sql Server 2000数据库编写的网络应用程序。它有应用简单、升级和部署方便、扩展性强等特点。它实现了无纸化考试、批量添加试题、动态随机生成试题、客观题部分计算机自动阅卷即时评分、成绩直接存到数据库进行统计排名等功能。本系统的开发,对于提高教师的工作效率、减轻教师的工作负担、提

2、高考试的质量、减少考试的成本等具有重要的意义。关键词.net平台;在线考试;自动阅卷AbstractWith the rapid development of computer network, traditional test methods are facing reforms, but the network examination is an important direction of development. Online examination system can be carried out by means of Internet, the examination can

3、be carried out in different places, which greatly expands the flexibility of the exam. This online examination system is a netowork applications programmed by using latest Microsoft. Net platform and the B / S structure mode and Sql Server2000 database. It has many characteristic such as simple usin

4、g, easier upgrade and deployment, strong exponsibility and so on. It implements many functons such as paperless examination, batch add of questions, dynamicly generating of random questions, the computer automatically marking some objective questions immediately and score directly store in a databas

5、e , statistical ranking and so on.This systems development have the vital significance to raise teachers working efficiency, light teachers work load, enhance test quality, reduce test cost and so on.key word.Net platform;Online Examination;Automatic Marking目录 TOC o 2-3 h z t 标题 1,1 HYPERLINK l _Toc

6、263974781第1章绪论 PAGEREF _Toc263974781 h 1HYPERLINK l _Toc2639747821.1研发背景 PAGEREF _Toc263974782 h 1HYPERLINK l _Toc2639747831.2前景意义 PAGEREF _Toc263974783 h 1HYPERLINK l _Toc2639747841.3论文组织结构 PAGEREF _Toc263974784 h 2HYPERLINK l _Toc263974785第2章相关技术 PAGEREF _Toc263974785 h 3HYPERLINK l _Toc2639747862

7、.1ASP.NET技术 PAGEREF _Toc263974786 h 3HYPERLINK l _Toc2639747872.2C#语言 PAGEREF _Toc263974787 h 4HYPERLINK l _Toc2639747882.3Visual Studio 2008 PAGEREF _Toc263974788 h 4HYPERLINK l _Toc2639747892.4SQL语言 PAGEREF _Toc263974789 h 4HYPERLINK l _Toc2639747902.5小结 PAGEREF _Toc263974790 h 5HYPERLINK l _Toc26

8、3974791第3章系统分析 PAGEREF _Toc263974791 h 6HYPERLINK l _Toc2639747923.1可行性分析 PAGEREF _Toc263974792 h 6HYPERLINK l _Toc2639747933.2需求分析 PAGEREF _Toc263974793 h 6HYPERLINK l _Toc2639747943.3小结 PAGEREF _Toc263974794 h 7HYPERLINK l _Toc263974795第4章总体设计 PAGEREF _Toc263974795 h 8HYPERLINK l _Toc2639747964.1B

9、/S体系结构 PAGEREF _Toc263974796 h 8HYPERLINK l _Toc2639747974.2开发与运行环境 PAGEREF _Toc263974797 h 8HYPERLINK l _Toc2639747984.3项目规划 PAGEREF _Toc263974798 h 9HYPERLINK l _Toc2639747994.4系统功能结构图 PAGEREF _Toc263974799 h 9HYPERLINK l _Toc2639748004.5小结 PAGEREF _Toc263974800 h 10HYPERLINK l _Toc263974801第5章系统详

10、细设计 PAGEREF _Toc263974801 h 12HYPERLINK l _Toc2639748025.1设计目标 PAGEREF _Toc263974802 h 12HYPERLINK l _Toc2639748035.2逻辑结构设计 PAGEREF _Toc263974803 h 12HYPERLINK l _Toc2639748045.3小结 PAGEREF _Toc263974804 h 19HYPERLINK l _Toc263974805第6章系统实现 PAGEREF _Toc263974805 h 20HYPERLINK l _Toc2639748066.1系统前、后台

11、首页的运行结果 PAGEREF _Toc263974806 h 20HYPERLINK l _Toc2639748076.2登录模块主要功能设计 PAGEREF _Toc263974807 h 21HYPERLINK l _Toc2639748086.2.1登录模块功能划分 PAGEREF _Toc263974808 h 21HYPERLINK l _Toc2639748096.2.2登录功能实现方法 PAGEREF _Toc263974809 h 22HYPERLINK l _Toc2639748106.2.3学生注册 PAGEREF _Toc263974810 h 25HYPERLINK

12、l _Toc2639748116.2.4密码找回 PAGEREF _Toc263974811 h 26HYPERLINK l _Toc2639748126.3系统前台主要功能模块设计 PAGEREF _Toc263974812 h 26HYPERLINK l _Toc2639748136.3.1个人相关 PAGEREF _Toc263974813 h 26HYPERLINK l _Toc2639748146.3.2考试相关 PAGEREF _Toc263974814 h 28HYPERLINK l _Toc2639748156.3.3练习相关 PAGEREF _Toc263974815 h 3

13、7HYPERLINK l _Toc2639748166.3.4成绩相关 PAGEREF _Toc263974816 h 37HYPERLINK l _Toc2639748176.3.5退出系统 PAGEREF _Toc263974817 h 38HYPERLINK l _Toc2639748186.4系统后台主要功能模块设计 PAGEREF _Toc263974818 h 39HYPERLINK l _Toc2639748196.4.1管理员模块设计 PAGEREF _Toc263974819 h 39HYPERLINK l _Toc2639748206.4.2学生信息管理 PAGEREF _

14、Toc263974820 h 39HYPERLINK l _Toc2639748216.4.3科目管理 PAGEREF _Toc263974821 h 41HYPERLINK l _Toc2639748226.4.4考试信息管理 PAGEREF _Toc263974822 h 42HYPERLINK l _Toc2639748236.4.5练习信息管理 PAGEREF _Toc263974823 h 44HYPERLINK l _Toc2639748246.4.6试题管理 PAGEREF _Toc263974824 h 44HYPERLINK l _Toc2639748256.4.7人工阅卷

15、PAGEREF _Toc263974825 h 49HYPERLINK l _Toc2639748266.4.8成绩管理 PAGEREF _Toc263974826 h 51HYPERLINK l _Toc2639748276.4.9退出系统 PAGEREF _Toc263974827 h 53HYPERLINK l _Toc263974828第7章系统测试 PAGEREF _Toc263974828 h 54HYPERLINK l _Toc263974829第8章总结与展望 PAGEREF _Toc263974829 h 55HYPERLINK l _Toc2639748308.1总结 PA

16、GEREF _Toc263974830 h 55HYPERLINK l _Toc2639748318.2展望 PAGEREF _Toc263974831 h 55HYPERLINK l _Toc263974832参考文献 PAGEREF _Toc263974832 h 1HYPERLINK l _Toc263974833致 PAGEREF _Toc263974833 h 3绪 论研发背景随着网络技术的飞速发展,现在很多国和地区都已经开设了远程教育,通过计算机网络实现异地教育和培训。远程教育包括很多环节,例如教学系统、答疑系统和考试系统等等。其中很重要的一个环节就是在线考试系统,同时它也是最难实

17、现的环节。在我国远程教育已经地发展起来,但是目前各种考试大都采用传统的考试方式,在这种方式下,组织一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。显然,随着考试类型的不断增加与考试要求的不断提高,教师的工作量将会越来越大,可以说传统的考试方式已经不能适应现代考试的需要。在线考试是现阶段研究开发的一个热点。客户端的配置可以极为简单,使考试不受地域的局限。一个完备的在线考试系统可以使用户在网上学习过后与时检验自己的学习效果,发现自己的不足,使得学习效率得到很大提高。本在线考试系统是基于B/S模式的ASP.NET WEB应用系统。本系统可以实现无纸化考试,批量添加试题

18、、动态随机生成试题,客观题部分计算机自动阅卷即时评分等功能,在一定程度上提高了考试的质量、减轻教师的工作负担与提高工作效率。前景意义伴随着远程教育的蓬勃发展,作为教学当中不可分割的一部分的在线考试系统也得到了当今远程教育研究者的关注,考试是考察学生对所学习知识的接受和理解程度的重要手段,无纸化的考卷,考试的随时性,随地性,这些特点都是研究并开发网络考试系统主要的原因,网络考试系统远远超越了传统考试固定时间,固定地点的考试模式的限制,将给学生和老师带来极大的便利。随着Internet的相关技术的发展,特别是Web技术的出现,人们开始致力于研究和开发基于Internet考试系统,这也大大推动了远程

19、教育的发展。论文组织结构第2章介绍了开发本系统用的开发平台、语言等。第3章介绍了开发本系统的需求分析和可行性分析。第4章介绍了本系统的项目规划并列出系统功能结构图。第5章介绍了本系统的设计目标、开发与运行环境和逻辑结构设计。第6章展示了本系统前台、后台首页的运行结果和开发环境。第7章介绍了登录模块的主要功能和实现方法。第8章介绍了系统前台的主要功能和实现方法。第9章介绍了系统后台的主要功能和实现方法。第10章对论文进行总结和展望。相关技术该在线考试系统主要采用Microsoft .net Framework、A Sql Server 2000数据库、C#语言、SQL语言以与Visualstud

20、io2008等技术和工具,整体设计遵循软件工程的方法,经过需求分析、总体设计、文档和代码的编制、模块测试和系统实现几个阶段。ASP.NET技术A不仅仅是 Active Server Page (ASP) 的下一个版本,而且是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。A提供许多比现在的Web开发模式强大的优势,把基于通用语言的程序在服务器上运行,将程序在服务器端首次运行时进行编译。A构架是可以用Microsoft(R)公司最新的产品 Visual S开发环境进行开发,WYSIWYG(What You See Is What You Get所见即为所得)的

21、编辑。这些仅是A强大化软件支持的一小部分。因为A是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上(笔者到现在为止只知道它只能用在Windows 2000 Server上)。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到A的Web应用中。A同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C+和Java的结合体),VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能

22、够完整的移植向A。A使运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和配置变得非常简单,所以,利用A进行开发可以起到事半功倍的效果。C#语言C#是一种简单、现代、面向对象和类型安全的编程语言,由C和C+发展而来。C#(发音为“C霎普”)牢固地植根于C和C+语言族谱中,并且会很快被C和C+程序员所熟悉。C#的目标在于把Visual Basic的高生产力和C+本身的能力结合起来。C#作为Microsoft Visual Studio的一部分提供给用户,除了C#以外,Visual Studio还支持Visual Basic、Visual C+和描述语言VBScript和Jscript。所

23、有这些语言都提供对Microsoft .NET平台的访问能力,它包括一个通用的执行引擎和一个丰富的类库。Microsoft .NET平台定义了一个“通用语言子集”(CLS),是一种混合语言,它可以增强CLS兼容语言和类库间的无缝协同工作能力。对于C#开发者,这意味着既是C#是一种新的语言,它已经可以对用老牌工具如Visual Basic和Visual C+使用的丰富类库进行完全访问。C#自己并没有包含一个类库。Visual Studio 2008Visual Studio2008是微软开发的visual studio系列开发工具的最新版本,微软公司在2008年12月初发布新一代企业级应用开发平

24、台.NET Framework 2.0和开发工具Visual Studio 2008。现代信息部门的开发团队必须因应高度竞争的商业环境,快速进行应用软件系统的设计、开发、测试以与部署带领企业赢得市场。大部分的软件开发团队,都面临以下几项挑战:开发团队间的沟通困难,开发工具形形色色,分散且难以互相整合开发程序、开发标准难以建立。Microsoft Visual Studio 2008 开发工具系列,有许多令人期盼已久的强化功能,提供更高的程序开发效率、更精简的程序代码、与更佳的安全性。包括 .NET Framework 2.0、 ASP.NET 2.0、64-bit 程序开发支持、新的 Wind

25、ows Form 程序设计、以与对行动装置解决方案的全新开发支持。SQL语言SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以与查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。SQL 面向数据库执行查询;SQL 可从数据库取回数据;SQL 可在数据库中插入新的记录;SQL 可更新数据库中的数据;SQL 可从数据库删除记录;SQL 可创建新数据库;SQL 可在数据库中创建新表;SQL 可在数据库中创建存储过程;SQL 可在数据库中创建视图;SQL 可以设置表、存储过程和视图的权限。SQL 是一门 ANSI 的

26、标准计算机语言,用来访问和操作数据库系统。SQL 语句用于取回和更新数据库中的数据。SQL 可与数据库程序协同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以与其他数据库系统。SQL语句结构不幸地是,存在着很多不同版本的 SQL 语言,但是为了与 ANSI 标准相兼容,它们必须以相似的方式共同地来支持一些主要的关键词(比如 SELECT、UPDATE、DELETE、INSERT、WHERE 等等)。小结本章介绍了该系统完成过程中所用到的语言、平台和技术。A是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在W

27、eb应用软件开发者的几乎全部的平台上(笔者到现在为止只知道它只能用在Windows 2000 Server上)。 C#是一种简单、现代、面向对象和类型安全的编程语言,由C和C+发展而来。Visual Studio2008是微软开发的visual studio系列开发工具的最新版本,微软公司在2008年12月初发布新一代企业级应用开发平台.NET Framework 2.0和开发工具Visual Studio 2008。SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以与查询、更新和管理关系数据库系统。同时也是数据库脚本文件

28、的扩展名。系统分析 应包含数据流图或用例图 数据字典 E-R 图 可行性分析在线考试系统前台和后台分别对学生、管理员(老师)操作系统的功能详细的分类,满足了学生注册、密码找回、修改个人信息、参加考试、参加练习、查看考试成绩等要求,同时也满足了管理员(老师)管理学生信息、管理科目、管理试题、人工阅卷、管理学生成绩等各种要求。该考试系统是一个功能比较齐全的考试系统,保证了登录模块、前台学生考试模块、后台管理员(老师)管理模块等各种功能的实现。需求分析通过相关调查,要求该在线考试考试系统具有以下功能:(1)未注册的学生需要根据自己的学生证号进行注册(其中学生证号作为登录系统的用户名),提交个人基本信

29、息。(2)已注册学生登录系统以后可以修改密码,遗忘密码的学生可以进行密码的找回。(3)学生参加考试时,选择考试的科目,考试都有时间限制,而且每场考试只能考一次,学生做完试题检查无误后点击“交卷”按钮就可以交卷,考试时间结束时系统也可自动交卷。(4)考试结束后学生可以进行考试成绩查询。(5)学生参加练习时,可以选择科目和套题进行练习。(6)管理员(老师)利用管理员账号登录系统后,可以进行添加和查看管理员、学生信息管理(对学生的信息进行添加、删除和修改)、科目管理(对科目进行添加、删除和修改)、考试信息管理(发布和查看考试时间、科目和考试规则)、练习信息管理(发布和查看练习信息)、试题管理(对试题

30、进行添加、删除和修改)、人工阅卷(主观题阅卷)、学生成绩管理(对学生成绩进行统计、排名和查询)。小结通过相关调查对整个系统进行了需求分析,划分出系统的各个功能模块;为系统各个功能的实现做了可行性分析。总体设计B/S体系结构本系统采用的是B/S结构。B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。相对于C/S结构属于“胖”客户端,需要

31、在使用者电脑上安装相应的操作软件来说,B/S结构是属于一种“瘦”客户端,大多数或主要的业务逻辑都存在在服务器端,因此,B/S结构的系统不需要安装客户端软件,它运行在客户端的浏览器之上,系统升级或维护时只需更新服务器端软件即可,这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。 B/S结构系统的产生为系统面对无限未知用户提供了可能。当然,与C/S结构相比,B/S结构也存在着系统运行速度较慢,访问系统的用户不可控的弱点。开发与运行环境硬件平台:CPU:P41.8GHz;存:512MB以上。软件平台:开发平台:Visual Studio 2008数据

32、库:SQL Server 2000;浏览器:IE6。0,推荐使用IE7。0;分辨率:最佳效果1024*768像素。项目规划该在线考试系统是一个功能完善的在线考试系统,由登录模块、前台学生考试模块、后台管理员(老师)管理模块三部分组成。登录模块:主要包括学生登录、管理员(老师)登录、学生注册、密码找回。前台学生考试模块:主要包括学生注册、学生密码找回、查看个人信息、修改改个人信息、修改密码、查看考试信息、参加考试、参加练习、查看考试成绩、退出系统。后台管理员(老师)管理模块:主要包括后添加和查看管理员、注册学生信息管理(对学生的信息进行添加、删除和修改)、科目管理(对科目进行添加、删除和修改)、

33、考试信息管理(发布和查看考试时间、科目和考试规则)、练习信息管理(发布和查看练习信息)、试题管理(对试题进行添加、删除和修改)、人工阅卷(主观题阅卷)、学生成绩管理(对学生成绩进行统计、排名和查询)、退出系统。系统功能结构图在线考试系统登录模块功能结构,如图4-1所示。在线考试系统登录模块功能结构前台和后台登录口学生注册学生密码找回图 4-1在线考试系统登录模块功能结构图在线考试系统前台功能结构,如图4-2所示。在线考试系统前台功能结构查看个人信息修改个人信息修改密码参加考试参加练习查看考试成绩退出系统图 4-2在线考试系统前台功能结构图在线考试系统后台功能结构,如图4-3所示。在线考试系统后

34、台功能结构添加管理员查看管理员学生信息管理科目管理考试信息管理考试题目管理人工阅卷(主观题阅卷)学生成绩管理练习题目管理练习信息管理退出系统图 4-3 在线考试系统后台功能结构图小结本系统分为:登录模块、前台学生考试模块、后台管理员(老师)管理模块三部分。详细列出了各个模块的主要功能和功能结构图。设计的整体思路为:管理员(老师)登录系统后台发布试题,学生登录系统前台进行考试和练习。系统详细设计设计目标该考试系统是根据学生考试模块、管理员(老师)管理模块进行开发设计的,主要实现如下目标:登录模块,实现提供前台和后台登录口以与学生注册密码找回的;前台学生考试模块,实现查看和更改个人信息、修改密码、

35、参加考试和练习、查看考试成绩、退出系统等功能;后台管理员(老师)管理模块,实现注册和查看管理员、学生信息管理、科目管理、考试和练习信息管理、考试和练习题目管理、人工阅卷(主观题阅卷)、学生成绩管理、退出系统等功能。逻辑结构设计本系统数据库采用SQL Server 2000数据库,系统数据库名称为ExamOnline。数据库ExamOnline中包含9表。如下所示:(1)tb_Students(学生注册信息表)学生注册信息表主要用于保存学生的注册信息。表tb_Students的结构如表A-1所示。表A-1 tb_Students表字段名数据类型长度是否主键描述IDint4是数据库流水号Stude

36、ntNumberchar12否学号StudentNamenvarchar4否学生StudenPwdvarchar10否密码Sexnchar1否性别Majornvarchar20否专业Classnvarchar20否班级Questionnvarchar11否密码查询问题Answernvarchar20否密码查询答案RegisterTimedatetime8否注册时间(2)tb_Admin(后台管理员信息表)后台管理员信息表主要用于保存后台管理员信息。表tb_Admin的结构如表A-2所示。表A-2 tb_Admin表字段名数据类型长度是否主键描述IDint4是数据库流水号AdminIDvarch

37、ar15否管理员AdminNamenvarchar4否管理员AdminPwdvarchar10否密码RegisterTimedatetime8否管理员注时间(3)tb_Subject(科目信息表)科目表主要用于保存各科目信息容。表tb_Subject的结构如表A-3所示。表A-3 tb_Subject表字段名数据类型长度是否主键描述IDint4是数据库流水号SubjectNamenvarchar20否科目名称Majornvarchar20否所属专业RegisterTimedatetime8否加入时间(4)tb_AttentionExam(考试信息表)考试信息表主要用于保存考试信息。表tb_At

38、tentionExam的结构如表A-4所示。表A-4 tb_AttentionExam表字段名数据类型长度是否主键描述IDint4是数据库流水号SubjectNamenvarchar20否考试科目名称Majornvarchar20否所属专业ExamTime1int4否考试时间ExamTime2nvarchar30否具体考试时间Partnchar1否考试部分Part1nchar3否第一部分Part1_Numberint4否第一部分题目数量Part2nchar3否第二部分Part2_Numberint4否第二部分题目数量Part3nchar3否第三部分Part3_Numberint4否第三部分题目

39、数量Part4nchar3否第四部分Part4_Numberint4否第四部分题目数量Scoreint4否试题总分Score1int4否第一部分分数Score2int4否第二部分分数Score3int4否第三部分分数Score4int4否第四部分分数Attentiontext16否考试规则RegisterTimedatetime8否试题加入时间(5)tb_AttentionExercise(练习信息表)练习信息表主要用于保存练习信息。表tb_AttentionExercise的结构如表A-5所示。表A-5 tb_AttentionExercise表字段名数据类型长度是否主键描述IDint4是数

40、据库流水号SubjectNamenvarchar20否考试科目名称Majornvarchar20否所属专业TaoTinvarchar20否所属套题Part1nchar3否第一部分Part1_Numberint4否第一部分题目数量Part2nchar3否第二部分Part2_Numberint4否第二部分题目数量Part3nchar3否第三部分Part3_Numberint4否第三部分题目数量Part4nchar3否第四部分Part4_Numberint4否第四部分题目数量RegisterTimedatetime8否试题加入时间(6)tb_ExamTopic(考试题库表)考试题库表主要用于保存考试

41、题。表tb_ExamTopic的结构如表A-6所示。表A-6 tb_ExamTopic表字段名数据类型长度是否主键描述IDint4是数据库流水号SubjectNamenvarchar20否考试科目名称Majornvarchar20否所属专业TopicTypenchar3否试题类型Topicnvarchar100否题目OptionAnvarchar50否选项AOptionBnvarchar50否选项BOptionCnvarchar50否选项COptionDnvarchar50否选项DAnswer1char4否客观题答案Answer2nvarchar200否主观题答案RegisterTimedat

42、etime8否试题加入时间(7)tb_ExerciseTopic(练习题库表)练习题库表主要用于保存练习题。表tb_ExerciseTopic的结构如表A-7所示。表A-7 tb_ExerciseTopic表字段名数据类型长度是否主键描述IDint4是数据库流水号SubjectNamenvarchar20否考试科目名称Majornvarchar20否所属专业TopicTypenchar3否试题类型Topicnvarchar100否题目OptionAnvarchar50否选项AOptionBnvarchar50否选项BOptionCnvarchar50否选项COptionDnvarchar50否

43、选项DAnswer1char4否客观题答案Answer2nvarchar200否主观题答案RegisterTimedatetime8否试题加入时间(8)tb_Answer(主观题答案表)主观题答案表主要用于保存考生做的主观题答案。表tb_Answer的结构如表A-8所示。表A-8 tb_Answer表字段名数据类型长度是否主键描述IDint4是数据库流水号StudentNumberchar12否学号StudentNamenvarchar4否学生Classnvarchar20否班级Majornvarchar20否所属专业SubjectNamenvarchar20否考试科目名称Answernvar

44、char200否主观题答案RegisterTimedatetime8否试题加入时间(9)tb_Score(学生成绩表)学生成绩表主要用于保存学生考试成绩。表tb_Score的结构如表A-9所示。表A-9 tb_Score表字段名数据类型长度是否主键描述IDint4是数据库流水号StudentNumberchar12否学号StudentNamenvarchar4否学生Classnvarchar20否班级Majornvarchar20否所属专业SubjectNamenvarchar20否考试科目名称Score1int4否客观题成绩Score2int4否主观题成绩Scoreint4否总成绩Regis

45、terTimedatetime8否试题加入时间小结本章说明了本系统的设计目标、开发与运行环境、逻辑结构设计,为整个系统的开发做好准备。系统实现系统前、后台首页的运行结果系统前台首页的运行结果如图6-1所示。21图6-1系统前台首页运行结果系统前台框架图说明如表6-1。表6-1 系统前台首页页面说明区域名称说明对应文件1功能模块主要用于显示前台学生考试模块中的功能Site1.Master2容显示主要用于显示功能模块中的容Main.aspx系统后台首页的运行结果如图 6-2所示1 2图 6-2 系统后台首页运行结果系统后台框架图如表6-2所示。表6-2 系统后台首页页面说明区域名称说明对应文件1功

46、能模块主要用于显示后台管理模块中的功能Site2.Master2容显示主要用于显示功能模块中的容AdminMain.aspx登录模块主要功能设计登录模块功能划分(1)登录功能。本在线考试系统前后和后台共用一个登录窗口,登录系统前选择身份,选择“学生”,输入学号和密码后登录到系统的前台;选择“管理员”,输入管理员账号和密码登录到系统的后台。(2)学生注册功能。登录模块只提供学生注册功能,未注册的学生,点击“注册”进入注册页面,以学号作为用户名进行注册。未注册的管理员利用默认的管理员账号(admin)和密码(666666)登录系统的后台管理中心后,选择“添加管理员”可以进行添加管理员账号。(3)学

47、生密码找回功能。忘记密码的学生,可以点击“忘记密码”进入密码找回页面,根据提示输入正确的信息就可以找回密码。登录界面如图7-1所示:图 7-1登录页面运行效果登录功能实现方法登录功能的实现方法是在Login.aspx.cs文件中实现的,当输入的用户名和密码通过RequiredFieldValidator控件验证后,开始执行数据库最终验证是否有此用户,密码是否正确。根据用户输入的用户名与口令动态组合成一个查询,当身份选择是学生时通过sql = select count(*) from tb_Students where StudentNumber= + userName + and Studen

48、tPwd= + pwd + ;语句tb_Students表中的已注册记录的验证,用户而且密码正确就能够登录成功,否则显示无此用户或密码不正确。当身份选择是管理员时执行与tb_Admin表中的注册记录的验证,如果有此用户而且密码正确就能够登录成功,否则显示无此用户或密码不正确。 登录模块方法实现的代码如下: /*Login.aspx.cs*/using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;u

49、sing System.Web.UI.WebControls.WebParts;using System.Xml.Linq;namespace WebApplication public partial class Login : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) protected void btnLogin_Click(object sender, EventArgs e) if (Page.IsValid) string connectionString = server=(lo

50、cal);database=ExamOnline;uid=sa;pwd=123; SqlConnection conn = new SqlConnection(connectionString); string userName = ;/用户名 string pwd = ;/密码 userName = txtUserName.Text.Trim(); pwd = txtPwd.Text.Trim(); string sql; if (ddl.SelectedItem.Text.Trim() = 学生) /根据用户输入的用户名与口令动态组合成一个查询 sql = select count(*)

51、from tb_Students where StudentNumber= + userName + and StudentPwd= + pwd + ; SqlCommand cmd = new SqlCommand(sql, conn); conn.Open(); int n = (int)cmd.ExecuteScalar();/查询返回的记录条数 conn.Close(); if (n = 0)/如果没有返回记录 /弹出错误提示框 Response.Write(alert(登录失败!学号或密码错误!); else /把用户名存在SessionStudentNumber中 SessionS

52、tudentNumber = userName; /转向Main.aspx页面 Response.Redirect(Main.aspx); else /根据用户输入的用户名与口令动态组合成一个查询 sql = select count(*) from tb_Admin where AdminID= + userName + and AdminPwd= + pwd + ; SqlCommand cmd = new SqlCommand(sql, conn); conn.Open(); int n = (int)cmd.ExecuteScalar();/查询返回的记录条数 conn.Close()

53、; if (n = 0)/如果没有返回记录 /弹出错误提示框 Response.Write(alert(登录失败!管理员名称或密码错误!); else Response.Redirect(/Admin/AdminMain.aspx); protected void lnkRegister_Click(object sender, EventArgs e) Response.Redirect(Register.aspx); protected void lnkGetpwd_Click(object sender, EventArgs e) Response.Redirect(Step1.aspx

54、); 学生注册未注册的学生点击登录页面的“注册”按钮,就可以到注册页面进行注册,注册时学生所填写的学号作为以后等录该系统的用户名,把注册资料填写正确完整后点击“提交”完成注册,返回到登录页面。如图7-2所示:图7-2学生注册页面运行结果密码找回当学生忘记密码时点击登录页面的“找回密码”按钮,就可以进入密码找回页面,在密码找回页面按照提示填入相应的正确信息就可以找回自己的密码。系统前台主要功能模块设计个人相关查看个人信息点击“查看信息”进入个人信息显示页面,如图8-1所示:图8-1查看个人信息页面运行结果实现方法:利用select * from tb_Students 语句把数据中个人资料读取出

55、来,以表格的形式显示在页面上,学生可以直观的看到自己注册的信息。修改个人信息个人信息改变或者在“查看个人信息”中发现自己的信息有错误,单击“修改个人信息”,个人信息以表格的方式在页面上显示出来,把错误的信息改正后点击“提交”,正确的信息将存到数据库,数据库中错误的信息更新成正确的信息,这里用到了sql的更新语句”updata 表名 set 字段名=正确值”。修改密码点击“修改密码”就可以进入密码修改页面,首先输入旧密码,然后数据新密码,最后重复输入新密码,这用到了RequiredFieldValidator控件、RegularExpressionValidator控件和CompareValid

56、ator控件,这三个控件的作用分别为验证输入是否为空、输入的新密码是否在设定的围和两次输入的新密码是否一样。通过验证后点击提交,密码修改成功。考试相关点击“考试相关”里的“参加考试”进入考试信息与规则页面,在此页面里学生能够看到考试科目、试题的类型、试题分数、考试时间以与考试规则。如图8-2所示:图8-2考试信息与规则页面运行结果学生了解考试信息与规则后点击“开始考试”按钮,就能进入考试页面,开始考试如图8-3所示:图8-3a考试页面运行结果图8-3b考试页面运行结果考试页面的计时器是由JavaScript编写的,var m=接收从数据库中读出的考试时间,然后由函数function Time(

57、)完成计时功能。当考试时间结束时,系统自动交卷。计时器功能实现代码如下:/*Exam.aspx*/var msec=0var sec=0var min=0var m=function Time()document.forms0.time.value=min+:+secgo=setTimeout(Time(),1)msec+if(msec=1000)msec=0sec+if(sec=60)if(minm)sec=0min+if(min=m)window.clearTimeout(go); document.getElementById(btnSubmit1).click();/考试到点,触发bu

58、tton.Click事件 alert(考试时间已到,试卷已提交,感使用本系统!);考试页面生成的考题是动态随机生成的,实现方法是,利用Sql语句:”select Topic from tb_ExamTopic where SubjectName=”+Session“SubjectName”+.ToString()” order by newid()”,将数据库中的相应科目的考试题目随机读出(顺序打乱全部读出),然后用sqldatareader读出考试信息中规定的试题的题数,这样就实现了随机读取试题,datalist控件用于接收动态随机读取的试题。试题分为客观题和主观题,学生交卷后可以看到客观题

59、的对错情况、正确答案、得分;学生作答的主观题答案将提交到数据库,由老师人工阅卷。交卷后的页面如图8-4所示:图8-4a交卷后页面图运行结果图8-4b交卷后页面图运行结果动态随机生成试题和客观题自动阅卷即时评分方法实现的部分代码如下:/*Exam.aspx.cs*/ protected void bind(int i) SqlConnection conn = new SqlConnection(ConnectionString); switch (i) /从数据库中选择单选题 case 1: conn.Open(); SqlCommand cmd1 = new SqlCommand(selec

60、t * from tb_ExamTopic where TopicType= + lblPart1_1.Text.Trim() + and Major=+major+and SubjectName=+subjectname+ order by newid(), conn); SqlDataReader dr1 = cmd1.ExecuteReader(); /创建存表DataTable DataTable table1 = new DataTable(ExamTopic); table1.Columns.Add(Topic); table1.Columns.Add(OptionA); tabl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论