在线测试系统(毕业论文) 下载本文

苏州科技学院天平学院本科生毕业设计(论文)

{

lblMsg.Text = \选择题数量不能超过\题\ return; }

new BLLPaperByRandomSelection().CreatePaper(paper); Response.Redirect(\ }

5.1.3 测试管理模块

设计思路:对测试进行管理,点击添加测试,然后选择试卷,然后设置测试中每道题的分值,被测试的学生和试卷有效期。学生测试完成后老师可以点击评卷管理进行批改也可以自动批改。批改后点击成绩管理可以查看学生测试的总体情况。

Web层BLL层DAL层数据库1.输入测试信息添加测试1.1测试实体1.1.1测试数据图5.12 添加测试时序图

25

苏州科技学院天平学院本科生毕业设计(论文)

图5.13 测试安排界面

图5.14 评卷管理界面

26

苏州科技学院天平学院本科生毕业设计(论文)

图5.15 成绩管理界面

实现代码(部分):通过设计类(Admin_Test_TestList())[12]中的方法生成测试列表。

protected void Page_Load(object sender, EventArgs e) {

RoleCheck.DenyLogin(); if (!IsPostBack) {

int pageNum = 1;

if (Request.QueryString[\

pageNum = Convert.ToInt32(Request.QueryString[\ BindTestList(pageNum); } }

private const int PAGE_SIZE =20;

private void BindTestList(int pageNum) //绑定测试列表 {

PageList list = new BLLTest().GetTestList(pageNum, PAGE_SIZE); rplTestList.DataSource = list.RecorderList; rplTestList.DataBind();

lblPageUrl.Text = StringHelper.MakePageUrl(\

list.PageCount, list.RecorderCount); //记录共几页,共几条记录

}

protected void rplTestList_ItemDataBound(object sender, RepeaterItemEventArgs e)

27

苏州科技学院天平学院本科生毕业设计(论文)

{

if (e.Item.ItemType == ListItemType.Item ||

e.Item.ItemType==ListItemType.AlternatingItem) //判断项是控件内容中的项或交插项

{

HiddenField hidPaperType =

(HiddenField)e.Item.FindControl(\存储隐藏字段

HiddenField hidTestID = (HiddenField)e.Item.FindControl(\ HiddenField hidPaperID =

(HiddenField)e.Item.FindControl(\

HyperLink link = (HyperLink)e.Item.FindControl(\

string url=string.Empty;

int paperType = Convert.ToInt32(hidPaperType.Value); switch ((PaperType)paperType) {

case PaperType.BySelection:

url = \ break;

case PaperType.ByRandom:

url =\ break; default: break; }

link.NavigateUrl = url + string.Format(\

hidTestID.Value, hidPaperID.Value); //点击试卷后链接到试卷详细

} }

5.1.4 学生测试模块

设计思路:当有测试要参加的时候,点击开始测试按钮,进入图5.17 测试界面进行测试,可是测试途中点击保存答案,保存当前答案,测试完成后点击交卷按钮完成测试。

28