基于asp.net的在线考试系统、基于c#的在线考试管理系统

news2024/9/20 18:46:20

摘    要

伴随着社会以及科学技术的发展互联网已经渗透在人们的身边,网络慢慢的变成了人们的生活必不可少的一部分,紧接着网络飞速的发展,管理系统这一名词已不陌生,越来越多的学校、公司等机构都会定制一款属于自己个性化的管理系统

本毕业设计的内容是设计并且实现一个基于net在线考试系统采用SQL Serve为数据库开发平台,MVC框架IIS10.0网络信息服务作为应用服务器在线考试系统的功能已基本实现,主要通知公告、学生管理、在线考试、试题、考试等管理功能

论文主要从系统的分析与设计 、数据库设计和系统的详细设计等几个方面来进行论述,系统分析与设计部分主要论述了系统的功能分析、系统的设计思路,数据库设计主要论述了数据库的设计,系统的详细设计部分主要论述了几个主要模块的详细设计过程。

【关键词】在线考试系统net语言;MVC框架;SQL Server数据库。

Abstract

With the development of society and science and technology, the Internet has penetrated around people, and the network has slowly become an indispensable part of people's life. With the rapid development of the network, the term management system is no stranger. More and more schools, companies and other institutions will customize their own personalized management system.

The content of this graduation project is to design and implement an online examination system based on net. Using SQL server as the database development platform, MVC framework, iis10 0 network information service as application server. The functions of online examination system have been basically realized, mainly including notice announcement, student management, online examination, test questions, examination and other management functions.

This paper mainly discusses from the aspects of system analysis and design, database design and detailed design of the system. The system analysis and design part mainly discusses the function analysis and design idea of the system. The database design mainly discusses the design of the database, and the detailed design part of the system mainly discusses the detailed design process of several main modules.

[Key words] online examination system; Net language; MVC framework; SQL Server database

  

1 引言

1.1  研究的目的及意义 2

1.2 研究的主要内容 3

1.3 本文的组织结构 4

 2 平台开发相关技术 5

2.1 net语言的简介 6

2.2 MVC框架方法介绍 7

2.3 SQL Serve数据库 8

2.4 NET服务器控件 9

2.5 B/S架构 10

3 软件系统需求及可行性分析 11

3.1 需求分析 12

3.2 系统可行性分析 13

3.2.1 技术可行性 14

3.2.2 操作可行性 15

3.2.3 经济可行性 16

4 系统软件的总体设计 17

4.1 系统开发流程 18

4.2 系统总体架构设计 19

4.2.1 总体设计 20

4.3 系统数据库的设计 21

4.3.1数据库E/R图 22

4.3.2 数据库表 23

5 系统软件功能的具体实现 24

5.1 管理员功能模块 25

5.2 学生功能模块 26

6系统的调试和测试 27

7 结论 28

7.1 收获与体会 29

参考文献 30

致    谢 31

1 引言

1.1研究的目的及意义

科学技术日新月异的如今,计算机在生活各个领域都占有重要的作用,尤其在信息管理方面,在这样的大背景下,学习计算机知识不仅仅是为了掌握一种技能,更重要的是能够让它真正地使用到实践中去,以创新的视角去不断方便人们的生活,推动对新知识的学习,培养自学能力,锻炼动手实践的本领。以前考试,也应该摆脱人工管理的模式,使用计算机技术来进行信息管理工作,于是我思考了很久,最后决定用基于net语言开发一个在线考试系统如今随着科技的迅速发展,net语言受到了众多开发者的青睐,net语言不仅简化了开发者的负担而且提高了开发效率,那么一个在线考试系统将是广大学校所需要的。所以要通过计算机胜任在线考试系统的工作,使在线考试系统更加准确、方便及快捷。     

1.2 研究的主要内容

随着信息化的发展,互联网需要提供更多的服务,构造更完善的体系以满足越来越多的用户的精神与物质需求。伴随着Internet技术的日益成熟,一种建立在网络基础上的信息管理模式形成了,这便是今天为大家所熟悉的线上管理系统。

传统的手工统计进行管理力量远远不够,所以有很多学校在线考试工作只停留在传统的在线考试服务。同时,很多学校本身资金是有限再加上也缺少专业水平的工作人员,所以在线考试的管理手段较为落后,也就很难提高学生考试效率,同时也就不能很好的为学生提供在线考试功能,于是在线考试系统能够为学生提供更为完善的在线考试以前在线考试都是通过手动来进行管理记录及操作,不但麻烦琐碎,还经常出现错误,给广大学生带来很不便,同时也需要大量的人力、物力和财力,极大的浪费了学校的资源。随着网络的快速发展,人们慢慢地来希望在线考试系统能够提供更为合理及完善的服务

1.3 本文的组织结构

本文的组织结构如下:

1、绪论。综述了本文的目的及意义,分析了在线考试系统的结构;更好的从学生的角度出发,发现当今在线考试中的不足,同时要指出本次系统中的特色。

 2、对系统主要的使用技术,开发环境、环境配置的介绍。介绍了本次开发所用的系统开发工具visual studio,还介绍了net语言MVC框架SQL Serve数据库

3、系统的设计与实现。介绍了开发在线考试系统信息系统的思路并进行了需求分析,在需求分析的基础上进行了总体设计、详细设计以及数据库等相关方面介绍;该部分是全文的主旨。

4、系统功能模块具体实现。对开发中一些主要具体功能的实现进行描述。涉及到数据库、页面参数传递等相关知识。

5、总结。对整个论文及设计过程进行总结,指出系统设计过程的心得以及设计中存在的不足;后期还有待完善的地方等。

2 平台开发相关技术

2.1 net语言的简介

ASP.net是一种服务器端脚本技术,可以使(嵌入网页中的)脚本In ternet服务器执行。ASP.NET是一种在IIS中运行的程序,IIS(Internet Information Services)是微软的Internet服务器,IIS是Windows servers操作系统免费捆绑的组件

ASP.NET工作过程:

1.当浏览器请求 HTML 文件时,服务器会返回该文件

2.当浏览器请求 ASP.NET 文件时,IIS 会把该请求传递给服务器上的 ASP.NET 引擎

3.ASP.NET 引擎会逐行地读取该文件,并执行文件中的脚本

4.ASP.NET 文件会以纯 HTML 的形式返回浏览器

Microsoft .NET平台将从根本上改善计算机和用户之间进行交互的方式,最大限度地发挥电子商务中计算技术的重要作用。用户可以通过语音和图像技术与其个人数据进行交互。这些数据将安全地存放在互联网上。

2.2 MVC框架方法介绍

在MVC模型中V即View视图是指用户看到并与之交互的界面。比如由html元素组成的网页界面,或者软件的客户端界面。MVC的好处之一在于它能为应用程序处理很多不同的视图。在视图中其实没有真正的处理发生,它只是作为一种输出数据并允许用户操作的方式。M即model模型是指模型表示业务规则。在MVC的三个部件中,模型拥有最多的处理任务。被模型返回的数据是中立的,模型与数据格式无关,这样一个模型能为多个视图提供数据,由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。C即controller控制器是指控制器接受用户的输入并调用模型和视图去完成用户的需求,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据如图2-1所示。
                    

图2-1  MVC框架结构图

2.3 SQL Serve数据库

目前应用最广泛的数据库有: SQL Server、SQL 、Oracle、adabas、DB2等。本系统是一个面向公众的网页,需要存储大量的学生信息,并且需要保证学生信息的安全,所以采用的是SQL Server数据库。SQL Server是一个新版数据库管理系统。增加了许多功能,使用简单,可伸缩性好,可用性高等优点。

SQL即结构化查询语言,是用于数据存取和查询、更新、管理数据库系统的语言,由Boyce和Chamberlin设计完成的。SQL语言有其固有语法,这在任何网络平台都可以查询到,主要包括六个部分,分别为:数据定义语言,数据操作语言,数据控制语言,事务处理语言以及指针控制语言。SQL语言的数据类型有字符型、文本型、数值型、逻辑型和日期型,这在应用中都是缺一不可的。SQL语言使用方式灵活,语言简洁易学,接近自然语言中的英语,便于学生快速掌握,而且集数据定义、操纵、控制于一体,高度非过程化的。

2.4 NET服务器控件

HTML控件在过去的页面开发中基本可以满足用户的需求,但是没有办法利用程序直接来控制它们的属性、方法和事件。而在交互性要求比较高的动态页面中需要使用到ASP.NET提供的Web服务器控件,这些Web控件提供了丰富的功能。

大多数的Web服务器控件类都派生于System.Web.UI.Control,而WebControl类又从System.Web.UI.Control类派生,都包含在System.Web.UI.WebControls命名空间下面。

在System.Web.UI.WebControls以下,服务器控件可分为两部分:

一、Web控件。这种控件用来组成与用户进行交互的页面,比如最常见的用户提交表单,这类控件包括最常用的按钮控件、文本框控件、标签控件等,还有验证用户输入的控件,以及自定义的用户控件等。使用这些控件可以组成与用户交互的接口。

二、数据绑定控件,在Web应用程序中,我们往往需要在页面中呈现一些来自于数据库、XML文件等的数据信息,这时我们就要用到数据绑定控件来实现数据的绑定和显示。这类控件包括广告控件、表格控件等,还有用于导航的菜单控件和树形控件。

2.5 B/S架构

B/S的系统是通过能上网的电脑就可以使用,它最大的优点是不需要安装专门的软件,首先浏览器向服务器发出请求,然后服务器处理请求把信息再返回给浏览器。不需要再次对数据进行存取与计算数据,只要负责显示数据来降低要求,如果说用户端像个“瘦子”,而服务器会越来越“胖”。B/S体系结构与C/S体系结构相比,最大的不同是:B/S体系的应用软件使用网络浏览器作为与用户交互的平台,而C/S则需要开发专用的应用程序。

当前MIS系统结构目前存在两种较为流行的结构:C/S和B/S两种。

    C/S结构的系统:C/S结构就是客户机服务器结构,它可以法派任务到Client端和Server端来进行,充分利用两端硬件环境的优势,来降低系统的通讯的花费。用户端主要作用是处理人机交互,执行用户端应用程序,收集数据以及向服务器发送任务请求。服务器基本作用是执行后台程序,它主要对客户机的请求申请进行反馈,除此之外,它的作用还包括:数据服务预约储系统的共享管理、通讯管理、文件管理等等。

    B/S结构的系统:这种网络结构简化了用户端,并把系统功能实现的中心集中到服务器上,在这种模式中,只需要一个浏览器就可以了。这种结构将很多的工作交于WEB服务器,只通过浏览器请求WEB服务,随后根据请求返回信息。

通常在网站网内部使用,采用C/S。而使用不仅限于内网的情况下使用B/S。考虑到本管理系统的一系列需求,所以,该系统开发使用B/S结构开发。

3 软件系统需求及可行性分析

3.1 需求分析

本次的毕业设计主要就是在基于基于net平台下设计并开发一个在线考试系统软件。运用当前Google提供的MVC框架来实现对课程信息查询功能模块和在线考试查询功能。当然使用的数据库是SQL Serve。尽管没有面向对象的数据库的作用强大,但是在net开发上还是比较的灵活和方便的。系统功能主要介绍以下几点:

在线考试系统主要包括大功能模块,即学生功能模块管理员功能模块。

1)管理员模块:系统中的核心用户管理员,管理员登录后,通过管理员功能来管理后台系统。主要功能有:首页、个人中心、通知公告管理、学生管理、在线考试管理、试题管理、考试管理等功能。管理员用例图如图3-1所示。

3.2 系统可行性分析

一个完整的系统,可行性分析是必须要有的,因为他关系到系统生存问题,对开发的意义进行分析,能否通过本网站来补充线下在线考试模式中的缺限,去解决其中的不足等,通过对本网站,不仅能使工作量不断地减少,还能使工作和管理的效率更加高。所以开发该网站能实现更大的意义和价值, 网站完成后,能否达到预期效果就要通过可行性分析,分析之后,决定此系统是否开发。该在线考试系统的开发设计中,对技术、经济、操作方面进行了可行性分析; 

3.2.1 技术可行性

本系统开发选择net语言它被研究的目的就是在于能够为网页创建等可以看到的信息。随着移动互联网技术的不断发展和创新,net俨然已成为下一代互联网的Web标准。所以后台设计选择使用SQL Serve数据库主要用来的建立和维护信息后台数据库的要求则是能够建立和维护数据信息的统一性和完整性。

3.2.2 操作可行性

现在随着科技的飞速发展,计算机早已经进入了人们的日常生活中,人们的工作环境也不像以前有那么多的要求,需要学生一定要到学校进行考试,有的考试宿舍也可以完成。这使得学生考试效益有了很大的提升。操作的多样性也变高了。因此,管理的计算机化,智能化是社会发展而带来的必然趋势,各种智能的软件层出不穷,不同的软件能完成学生不同的需求,这不仅提高了工作效率还能完成一些客户特定的一些需求。本系统不仅界面简洁明了还采用可视化界面,学生只要用鼠标和键盘就可以完成对相关信息的修改,删除,添加等操作。因为这个系统的操作十分简单,方便上手,对于第一次使用系统的人,只需要很少的时间就可以上手操作。由此可见,本系统在操作上是可行的。

3.2.3经济可行性

基于net在线考试系统,该网站软件开发仅需要一台普通的计算机便可完成实现开发,其成本很低。另外,作为毕业设计作品来讲,开发成本基本上可以忽略不计,且该系统软件的投入使用,可以实现更加快速高效的在线考试系统,同时还能实现对管理资源的有效节约,该在线考试系统在经济上完全可行。

4 系统软件的总体设计

4.1 系统开发流程

(1)需求分析:初步分析学生的需求,列出功能模块

(2)系统设计:相关数据库、各功能的设计。

3界面设计:根据各个模块准备素材,设计界面。

4代码编写:实现相关功能代码的编写

5测试运行:按照规划测试软件各项功能是否正常运行。

4.2 系统总体架构设计

4.2.1 总体设计

在线考试系统采用了结构化开发的方法。这种开发方法的优点是控制性比较强,开发过程中采用了结构化和模块化的设计思想,自顶向下,从总体到部分,合理划分系统的结构和模块。结构化开发时使用模块式开发,各模块之间互不影响,方便系统的开发与管理。 

本系统的设计是基于 B/S架构的三层体系结构,也就是浏览器和服务器结构。计算机技术发展的速度非常快,以前的设计结构都以C/S的模式为主,也就是用户端和服务端模式。但随着网页技术的发展,越来越多的学生习惯于使用浏览器。现在的网页技术可以在浏览器中实现非常漂亮的效果,以前的单一低调的学生端页面已经无法满足学生的需求。在B/S这种结构下,技术人员可以很轻松的设计出学生所需要的工作界面,页面代码通过浏览器进行解析展示,在浏览器中不做过多的事务逻辑的处理。主要的事务逻辑放在服务端进行处理。这样学生的电脑就不会承载过多的东西,只需要浏览器展示即可。对于开发人员也很方便进行系统的维护和升级。开发人员只需要在服务端进行系统的维护就可以了。使用net这样的跨平台性非常好的语言,这样的开发模式更加的方便,高效。本系统合理的进行了模块划分和组合,因此由于各个模块之间基本上是相互独立的,所以每个模块都可以独立的被解释、执行、调试和修改,让繁琐的系统设计工作简单化。

如图4.1系统软件的功能结构图:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2052038.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpingBoot自动装配原理

一,什么是SpringBoot自动装配 springboot自动装配:一个springboot项目通过扫描类路径下存在的类和各种配置信息自动装配,生成对应的B哦按对象,然后将他们交给spring容器管理。 二、SpringBoot自动装配原理 2.1启动类注解SpringB…

在MAVEN中版本依赖有冲突改怎么处理

1.为什么会出现版本依赖的冲突 如果存在版本冲突,通常可能会引发的报错是ClassNotFoundException、NoSuchMethodError等错误。Maven依赖版本冲突通常是由于间接依赖导致同一个jar包存在多个不同版本。例如,如果B依赖了A的1.0版本,而C依赖了A…

Nginx--防盗链问题

前言:本博客仅作记录学习使用,部分图片出自网络,如有侵犯您的权益,请联系删除 一、什么是盗链 盗链是一种网络行为,指的是一个网站未经授权,直接使用另一个网站资源(如图片、视频、音乐、文件等…

人人可以做的RAG检索增强生成实战

AI大模型持续火爆,我作为IT人员从业者也想参与一下,但是奈何大模型的参数太大,动辄上亿的参数需要很大的算力,GPU卡必不可少,对于手头羞涩的小白,不想投几千大洋只为了满足自己的好奇心。这真是个难题。 现…

【车载开发系列】单片机烧写的文件

【车载开发系列】单片机烧写的文件 【车载开发系列】单片机烧写的文件 【车载开发系列】单片机烧写的文件一. 什么是bin二. 什么是Hex三. 什么是Motorola S-record(S19)四. ELF格式五. Bin与Hex文件的比对六. 单片机烧写文件的本质 一. 什么是bin bin是…

回顾 | 瑞云科技亮相ICIC2024,虚拟仿真实训云平台引关注

2024年8月7日,天津市虚拟仿真学会主办的第二十届智能计算国际会议(ICIC2024)——虚拟仿真技术交流平行会议暨天津市虚拟仿真学会2024年暑期技术交流会在天津盛大召开。本次大会汇聚来自全国的顶尖专家、学者和行业领袖,共同探讨虚…

Notepad--文本编辑工具 for Mac教程【苹果电脑-简单轻松上手-免费Mac软件推荐】

Mac分享吧 文章目录 效果一、下载软件二、开始安装1、双击运行软件,将其拖入应用程序中,等待安装完毕2、应用程序显示软件图标,表示安装成功 三、运行测试解决“软件已损坏,无法打开”问题,若没有该问题,可…

TI DSP TMS320F280025 Note1:工程模板Template创建

TMS320F280025工程模板Template创建 文章目录 TMS320F280025工程模板Template创建新建一个ccs工程为需要添加的一些文件新建文件夹从c2000中拷贝官方基础文件到工程中cmd链接文件common头文件和源文件headers头文件和源文件库函数文件添加driverlib.lib文件 添加文件的路径文件…

【微信小程序】生命周期

1. 什么是生命周期 2. 生命周期的分类 3. 什么是生命周期函数 4. 生命周期函数的分类 5. 应用的生命周期函数 小程序的应用生命周期函数需要在app.js中进行声明,示例代码如下: 6. 页面的生命周期函数 小程序的页面生命周期函数需要在页面的 .js 文件…

将 hugo 博客搬迁到服务器

1. 说明 在 Ubuntu 22.04 上使用 root 账号,创建普通账号,并赋予 root 权限。 演示站点:https://woniu336.github.io/ 魔改hugo主题: https://github.com/woniu336/hugo-magic 2. 服务器配置 建立 git 用户 adduser git安装 git sudo apt …

蓝图中结构体改变后,要重新创建widget

发现了一个怪现象,在更改结构体后,界面上出不来相应的信息了,断掉传递到界面上的线后,再重新连接,发现错误“只有完全匹配的结构才是兼容的”,删除后,重新创建widget,正常。 如下图…

【STM32项目】在FreeRtos背景下的实战项目的实现过程(二)

个人主页~ 实战项目的实现过程(一)~ 实战项目的实现过程 二、初步了解各个外设硬件1、OLED模块2、GPS模块3、MPU6050模块4、超声测距模块5、温度测控模块6、语音模块7、SIM模块8、按键模块 三、查阅资料1、查看手册2、查找例程 四、研究硬件功能1、OLED…

OpenCv图像处理: 时域滤波与频域滤波

时域滤波: 空间域滤波的步骤一般如下: 1. 选择滤波器 选择一种低通滤波器,常见的包括: 均值滤波(平均滤波器)高斯滤波(Gaussian filter) 2. 定义滤波器核 根据选择的滤波器类型&…

【卡码网Python基础课 19.洗盘子】

目录 题目描述与分析一、栈二、栈的操作三、代码编写 题目描述与分析 题目描述: 在餐厅里,洗盘子的工作需要使用到栈这种数据结构。 假设你手里有一个盘子堆放区。现在需要模拟洗盘子的过程,每个盘子都有一个编号。 盘子堆放区操作说明&…

同一台电脑上安装不同版本的nodejs(搭配VSCode)

今天拉取了一个前后端分离的项目,运行前端的时候,出现node版本不匹配的情况。 本文章将从安装node.js开始到VSCode使用进行讲解 1、去官网下载node版本 以16版本为例,需要哪个版本,就在网址上把版本号替换即可 https://nodejs.o…

在ADS中使用传输端口参数构建理想元器件模型---以3dB电桥为例

在ADS中使用传输端口参数(S、Z、Y、ABCD)构建理想元器件模型—以3dB电桥为例 本文工程文件下载:在ADS中使用传输端口参数构建理想元器件模型-以3dB电桥为例-工程文件 目录 在ADS中使用传输端口参数(S、Z、Y、ABCD)构建…

8月18日笔记

目标不出网场景 在目标环境完全不出网的情况下,即所有的网络通信如SMB(Server Message Block)、DNS(Domain Name System)甚至包括TCP(Transmission Control Protocol)都不允许与外部网络进行交…

使用极限网关实现 ES 跨集群搜索

使用 ES 的小伙伴,有没有在用跨集群搜索的? 熟悉 ES 的小伙伴都知道,ES 本身就能实现跨集群搜索,那为啥还要聊这个?试想一下,如果集群都上线投产了,才出现跨集群搜索需求,那么可能出…

重磅!RISC-V+OpenHarmony平板电脑发布

仟江水商业电讯(8月18日 北京 委托发布)RISC-V作为历史上全球发展速度最快、创新最为活跃的开放指令架构,正在不断拓展高性能计算领域的边界。OpenHarmony是由开放原子开源基金会孵化并运营的开源项目,已成为发展速度最快的智能终…

Chapter 40 Socket网络编程

欢迎大家订阅【Python从入门到精通】专栏,一起探索Python的无限可能! 文章目录 前言一、Socket网络编程二、Socket服务端编程三、Socket客户端编程四、服务端与客户端相互通讯 前言 在现代计算机网络中,Socket(套接字&#xff09…