APP下载

在线考试系统中的关键技术

2009-05-29胡晓宏薛京丽刘红杰

网络与信息 2009年5期
关键词:在线考试

胡晓宏 薛京丽 刘红杰

摘要:为了克服C/S结梅的网络考试平台的缺点,提出了在NET平台上开发在线考试系统的构思,引入了反射,解决了窗体异步更新的问题,利用WSE技术提高系统的安全性,开发了基WebBrowser的富文本编辑器,解决了试题的编辑问题。实践结果表明,该系统方便快捷,稳定可靠。

关键词:在线考试;WSE;反射;WebSrowser;富文本编辑器

1引言

在网络技术逐渐渗入社会生活各个层面的今天,传统的考试方式也面临着变革,而网络考试则是一个很重要的方向。基于Web技术的网络考试系统可以借助干遍布全球的Internet进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。

2需求分析

在线考试系统的一般流程为:首先录入试题和人员信息,然后组织考场和提供在线的考试平台,最后自动阅卷。一般地由于录入各种信息和阅卷是老师集中处理的,所以这部分一般采取C/S的架构,而在线考试平台是面向广大学员,所以一般采取B/s的架构。

3关键技术

3.1窗体异步更新

由于录入信息和阅卷是基于c/s的,WinForm应用程序不可缺少的功能就是获取数据和更新界面信息。因为WinForm应用程序是基于线程的,在窗体运行时会创建一个本身的线程。所以当程序在窗体线程内连接远程服务器获取数据的同时就会占用窗体的UI线程。造成界面的假死。为了解决窗体的异步更新。可以自己设计一个CustomBackGroundWorker。

实现原理:利用System.Threading来实例化一个线程,然后抛出线程初始化、执行和执行结束的委托。

为了给开发人员提供更好的用户操作界面,可以利用反射为开发人员直接提供在线程中操作用户界面的方法。

我们可以在线程中封装利用反射来操作用户界面的方法。开发人员只需提供对象引用和对象的方法或属性名称就可以直接更新用户界面。

3.2WSE

WSE(Web Services Enhancements)是微软为了使开发者通过,NET创建出更强大,更好用的Web Services而推出的功能增强插件。

为了解决安全问题我们采用了WSE来验证用户的台法性。使用用户名和口令验证Web Services调用者身份:客户端通过SOAP扩展,在SOAP消息中加入用户名和口令(明文或加密),发送给Web Services端;服务端接到消息后,同样通过扩展从消息上下文中得到用户名和口令,再进行身份验证和其他操作。

3.3试题编辑器

传统的试题表现形式都是纯文本形式的。在互联网迅速发展的今天,网页的表现形式已经不能局限在纯文本的范围之内,所以试题的表现形式我们可以采用HTML的富文本形式的,里面有图片等多媒体。通过测试发现微软的WebBrowser能实现网页的视图编辑,也就是说可以在WinForm中直接编辑网页。因此开发了一个基于Web-Browser的富文本编辑器。如图1。

它有设计视图和HTML视图两种形式,也就是说用户既可以像做网页一样编辑试韪,也可以直接往里面录入HTML。

3.4试题导入导出

为了方便试题的录入,系统添加了试题的导入导出功能。用户只需要在Word中根据我们提供的模板录入试题信息就可以一次导入成百上千的试题。导人模板如图2所示。

实现原理:在Word中用户把试题信息录入到一个表格中,我们就要分析这个Word,我们需要的是这个试题的HTML,而Word的文件格式不是HTML的,因此在用户上传文件后首先要做的就是转换Word的格式到HTML。为此本系统做了一个格式转换类。

4结论

在线考试系统的功能包括试题和人员信息的录入、在线考试。其一大亮点就是完美地解决了富文本试题的实现方案,不再局限于纯文本的传统试题形式之内。使试题不仅仅包含文字,还能包括图片、音频、视频等内容。并且它的方便快捷的导入导出方案,更为只需了解Word的用户提供了试题录入的方法。

猜你喜欢

在线考试
基于Java的考场管理系统的研究与实现
大学物理在线考试与分析系统
高职院校移动互联自主学习考试平台的设计与实现
基于iOS 平台的智慧课堂管理系统的设计与实现
特种设备作业人员培训考核系统实现方法研究
在线考试系统分析与设计
大数据背景下在线评教与在线考试融合的思路探讨
基于MVC模式的在线考试测评系统的设计与实现
基于JAVA的在线考试系统的设计与实现