第23章 Web开发实例——在线考试系统 本章将带领大家一起完成一个ASP.NET Web开发实例— —在线考试系统的设计与开发,服务器端编程语言为 VB.NET。该系统主要完成题库维护、试卷生成、在线 考试、自动阅卷的功能。技术上采用了ADO.NET访问数 据库技术、Web控件及用户控件技术、随机数算法、数 据绑定控件(GridView控件)等。通过该实例来加深 VB.NET在Web开发中的应用理解。
章节内容 23.1 开发背景 23.2 系统分析 23.3 系统设计 23.4 功能实现
22.1 开发背景 某知名高校计算机科学与技术学院在 2008年制定了一整套教学改革计划,其 中一个具体工作就是搭建一个《学生在 线测评系统》。 本章讲到的《在线考试系统》就以《在 线测评系统》为原型,抽取其中典型功 能实例进行剖析讲解,从Web应用程序 的角度理解VB.NET的应用。
23.2 系统分析 23.2.1 需求分析 功能需求:
23.3 系统设计 系统组成:
题型以选择题为主 类图: 其中,Question类是所有类型题目的基类,包含了 题目的一般属性,即题号、答案、题干描述、所属 课程和知识点。XuanZe类是选择题类型,除了包括 Question类属性外,还具有选项集合属性。
页面设计 登录页面:
题库管理页面:
题目添加与编辑页面:
在线考试页面是由系统自动生成的,不 需要提前设计。 单选题用户控件如图所示。
数据库设计 数据库关系图
课程信息表(KeCheng) 代码 名称 类型 说明 bianhao 编号 nvarchar(50) 主键 mingcheng
知识信息表(ZhiShi) 代码 名称 类型 说明 kcbianhao 所属课程 nvarchar(50) 主键 bianhao 编号 mingcheng
选择题表(XuanZe) 代码 名称 类型 说明 bianhao 编号 nvarchar(50) 主键 miaoshu 题干描述 daan 答案 kecheng 课程 zhishi 知识 explain 解题思路 nvarchar(max)
选择题选项表(XuanXiang) 代码 名称 类型 说明 tihao 所属题目 nvarchar(50) 主键 bianhao 编号 miaoshu 选项描述 nvarchar(100)
试题信息表(Paper) 代码 名称 类型 说明 pid 编号 nvarchar(50) 主键 ptitle 试卷名称
试题题目信息表(PaperQuestion) 代码 名称 类型 说明 paperid 试卷编号 nvarchar(50) 主键 tihao 试卷包含题目的题号
用户信息表(User) 代码 名称 类型 说明 username 用户名 nvarchar(50) 主键 userpwd 密码 userrole 用户角色 bit 0表示学生, 1表示教师