基于C#+asp.net+sqlserver的网络在线考试系统设计与实现(毕业论文+程序源码)
大家好,今天给大家介绍基于C#+asp.net+sqlserver的网络在线考试系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦
文章目录:
1、项目简介
- 网络考试系统正是迎合这一时常需求而开发的,它旨在探索一种以互联网为基础的考试模式。通过这种新的模式,为学校创造一种新的考试环境,使考务管理突出失控的局面,提高考试工作效果和标准水平,是学校管理者、教师和学生可以随时随地通过网络进行考试。
- 本系统实现了管理员的后台学生和题库管理,学生前台考试,成绩查询等功能。
2、资源详情
项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:15353个字35页
包含内容:整套源码+完整毕业论文
3、关键词:
考试系统;网络考试系统;ASP.NET SQL SERVER4、毕设简介
提示:以下为毕业论文的简略介绍,项目源码及完整毕业论文下载地址见文末。
前言
省略
相比传统的考试方式,网络考试系统的主要好处是一方面可以动态的管理各种考试信息,只要准备好足够的题库,就可以按照要求自动生成各种试卷;另一方面,考试时间灵活,考生可以在规定时间段内的任意时间参加考试;另外计算机化的考试的最大特点就是阅卷快,系统可以在考试结束时当场给出考试结果,计算机阅卷给了考生的最大的公平感。
第一章 开发概述
1.1 开发背景
现代远程教育以计算机网络技术和多媒体技术为技术依托,为广为分散的学生提供远程交互式的学习方式。网上学习、网上练习和网上考试是远程教育中非常好的信息交互模式。基于数据库和ASP.NET的网上无纸化考试系统以其组卷的科学性、操作的简便性、评分的可靠性和高效率正在成为远程教育模式中不可或缺的组成部分。
网络考试系统极大的提高了教学的灵活性,现在许多领域已经有了广泛的应用。最有影响的案例就是ETA(美国教育考试中心)举办的GRE(美国研究生入学考试)的计算机化考试,它使考试由原来的每年只能有两次参加考试的机会变为每个工作日都可以参加考试。
本程序实现了一个功能强大的网上考试系统,该系统基本上可以满足现代信息化企业的内部考试要求,领导即使在外地出差也可以通过访问Internet轻松设置审批考试,考试结束后也不要传统的繁琐的阅卷过程,极大的提高了企业的办公效率。考试的题型都是标准化客观题目(单项选择题、多项选择题、判断题),对于其他类型的题目只要在文本的基础上稍加修改即可。本系统的最大特点是无论是考试计划还是新闻的发布都需要通过层层审批才能生效,审批流程,系统自动提示,这符合企业的流程,也有利于企业的管理。
网上考试系统一定要有的信息作为基础,关于考生的信息管理其实就是一个简单的会员管理系统,只要对这个库稍加修改即可变为任何学校,任意部门的考试系统。这里所实现主要是题库的管理,试卷的制定、审核、生成,考场的环境,考试结果的公布查询等功能。
我们所开发的系统对操作系统并没有太大的要求,可直接安装在计算机上使用。对计算机资源要求也不严格,任何语言编写的网上考试系统都可以和我们的系统并行使用,而且在Windows的环境下都可以运行。为了完成该软件的开发,我们工作小组的成员专门进行了市场调查。在调查的过程中进一步完善了系统的概况,并听取了有关专业人士的建议。
我利用ASP.NET去开发一套基于网络的考试系统,利用它可进行远程测试,从题库中提取考题供用户解答。用户提交答卷后,系统进行评分并将成绩登记入库。本系统还将实现及时反馈用户答题情况。
1.2 课题研发的目的、意义方法
基于ASP.NET网上考试系统,就是用万维网作为考试媒体传送考试内容,在网上进行网上测试和网上交流。网络作为媒体,其优势不仅在于它是很好的内容载体,可以随时随地地访问,还在于它提供了很多交流渠道,可以促进师生之间,学生之间的充分讨论,这对于提高教学质量,促进学生高级认知能力的开发是十分重要的。
本课题旨在研究传统考试的不足和缺点,并进行有益的探索,力图开发出基于ASP.NET网上考试系统。
我参考了其他关于这方面的研究内容,他们把基于数据库和ASP.NET的网上无纸化考试系统分为以下几步去实现。第一步,系统体系结构,系统采用两层的B/S结构,这样,客户端只需要安装浏览器软件,而且简化了系统的开发与维护。系统采用ASP.NET及SQL SERVER进行开发。第二步,系统执行过程,授予权限的教师登录网页后可以在验证密码后,对题库进行添加、删除、修改,也可以输入测试的章节、题型和分数等要求,进行组卷。组好的试卷放在试卷库中。学生登录后进行在线测试,测试完成后单击“交卷”,系统将从数据库中提取答案进行评分。第三步,在线测试模块,试卷组好后将试卷、答案放在试卷库中。学生在线注册后系统从试卷库中调出试卷发送到浏览器上,学生开始测试,系统进行时间控制。在学生交卷或系统时间到时,系统从试卷库中调出答案进行评分。
综上所述,要实现基于ASP.NET网上考试系统需实现客户端于数据库的链接以及题库中的编辑试卷、自动出题、自动成卷。其中网络数据库是是远程网络考试系统的核心,也是我要主要解决的问题。
远程网络考试系统由三级组成,即客户层、应用层、服务层。客户层采用浏览器进行浏览,可在系统控制下从浏览器中检索或向浏览器发送信息。客户层可能做不出来,因为具体实现时可能有困难。应用层是由Web服务器组成。系统采用ASP.NET、HTML语言进行设计,可实现网上练习、考试功能。服务层由网络数据库组成,采用PB作为开发工具,是远程网络考试系统的核心。
网络考试系统采用Web网页制作,由新用户注册、用户登录验证、网上练习、网上考试、网络安全五个部分组成,可实现网页与数据库的关联。其中用户登录身份验证设计是借助于ASP.NET工作原理完成的。用户使用账号和密码登录,提交后送到Web服务器。从网站的角度看,在ASP.NET文件中通过使用ADO对象,经过ODBC驱动程序来访问数据库,使用SQL语句获得数据并传送到Web服务器上,经过PWS的编译,将结果送到用户的浏览器上。
1. 3可行性分析
网络考试系统的开发及应用,避免以往学校里考试纸张、笔、监考和巡考等各种资源的浪费,并且后台管理是管理员单一的管理,确保了程序的安全性。
网络考试管理员登录后,对考试内容、专业、科目和考试题目等,都做了详细的分类,只要考生通过自己的学生编号和密码进入前台,按步骤依次进行选题和答题,答题完毕后系统会自动判断考卷,以及核对出最后考卷的分数,解决了在学校考试后等待考卷分数通知的问题。
1.3.1、技术上的可行性:
设备方面:目前市场上提供的软硬件资源基本上能够满足系统的开发需求。
技术方面:现有的开发水平完全能够胜任这项开发任务,对于管理人员来说,稍加培训就可以胜任该工作。
1.3.2、经济上的可行性:
目前我校有校园网,因此直接将该系统上传到校服务器上,并不需要额外的开支。
1.3.3、社会可行性:
随着宽带进入更多家庭,电脑价格下降,我国上网人数增长势头强劲。同时随着由美国计算机协会举办的ACM/ICPC国际大学生程序设计竞赛的扩大化,国内外高校的在线试题库系统蓬勃兴起。这类训练系统的铺开是大趋势,也为开发本系统提供了良好的外部环境。
第二章 系统分析
省略
2.1、系统开发的指导思想
省略
2.2、系统的软硬件要求:
2.2.1、硬件要求:
服务器的机器主要配置情况:
CPU P4 1.8GMHZ
内存 256MB
2.2.2、软件平台:
操作系统:WINDOWS
数据库:SQL Server
开发环境:Microsoft .NET FRAMEWORK SDK
开发语言:C#语言
服务器:IIS
浏览器:IE
2.3、系统调查:
通过相关调查,要求网站具有以下功能;
◆ 通过网络,考生可以注册。
◆ 通过网络,考生可以进入考试。
◆ 通过网络,考生可以查询成绩。
◆ 通过网络管理员可以管理学生。
◆ 通过网络,管理员可以管理学生成绩。
◆ 通过网络管理员可以管理考试试题。
总体目标:1、利用网络手段,提供网上训练环境。
2、进行在线测试,促进交流。
2.4 业务流程图
2.5 系统功能需求
通过对用户的调查获知:本程序实现了一个功能强大的网上考试系统,该系统基本上可以满足现代信息化学校教学的内部考试要求,管理员即使在外地出差也可以通过访问Internet轻松设置审批考试,考试结束后也不要传统的繁琐的阅卷过程,极大的提高了学校的办公效率。考试的题型都是标准化客观题目(单项选择题、多项选择题),对于其他类型的题目只要在文本的基础上稍加修改即可。
开发这个系统的目的就是帮助学校的主管考试部门提高工作效率,实现学校考试信息管理以及考试流程的系统化、规范化和自动化。系统最终实现的主要功能如下:
·题库管理设置部分:包括管理员对题库的增加、删除和修改操作。
·考试科目的设置:包括管理员对考试科目的增加、 删除和修改操作。
·试卷的信息的设置:由管理员设置考试信息,经过学校部门领导审核后通过考试。在考场上,系统将根据考试信息的设置对每个考生自动生成试卷。
·考场控制:系统控制考试时间、方刷新、考试成绩自动生成、多功能查询。
2.6、数据流程图
图1 数据流程图第一层
图2 数据流程图第二层:P1模块
注明:由于时间关系,论坛暂时不实现。
图3 数据流程图第二层:P2模块
2.7 系统目标
本程序是将传统的考试模式与先进的网络应用相结合进行开发设计的,主要实现如下目标:
◆ 具有实时性,已注册的用户无论身在何地,通过Internet浏览器,都可登陆网络考试系统。
◆ 具有严肃及公正性,系统提供的自动交卷功能,当考试到时间时,系统将自动交卷。
◆ 提供了考试时间倒计时功能,随时了解考试剩余时间。
◆ 考生可随时查看考试成绩。
系统自动交卷、阅卷,保证成绩真实准确。
第三章 系统设计
省略
3.1、系统功能结构设计
网络考试系统完整功能结构,如图1所示。
网络考试完整功能结构图
3.2 模块简介
网络考试系统是一个功能完善的网络应用程序,由前台学生登录考试、学生注册、找回密码和后台管理二部分组成。
◆ 前台功能模块
前台页面窗口主要包括登陆前台和后台的主页、选择考试课程、课程相关的套题、准备考试、开始考试、查询考试成绩和退出系统。
◆ 学生注册功能模块
学生注册页面只是单一的学生资料注册窗口。
◆ 密码找回功能模块
密码找回页面也只是单一的密码找回窗口。
◆ 后台功能模块
后台页面窗口主要包括系统管理员资料查询、添加、修改、删除,注册学生资料查询、删除,专业信息查询、添加、修改、删除,课程信息查询、添加、修改、删除,套题信息查询、添加、修改、删除,考生成绩查询、删除,考试题目查询、修改、删除,添加试题及退出系统管理等功能。
3.3. 数据库的设计
数据表结构
第四章 系统详细设计和实现
4.1 后台登录模块设计
后台登录模块为本网络考试系统的主要页面,操作者可从此页面登录前台学生考试页面、学生注册页面、密码找回页面或后台管理员页面。登录前台考试页面及后台管理员页面必须通过验证用户名、密码和验证码正确与否,只有合法的用户才可以进入系统。当用户没有输入用户名或密码以及验证码为空时,系统会自动弹出“不允许为空”的消息提示框。“登录”按钮左侧的复选框功能为是否选择管理员登录,选中则登录后台管理员页面,反之登录为前台学生考试页面,后台登录页面运行效果 如图1所示。
图1 后台登录模块
1.前台页面设计
网站后台登录可以通过VS2005工具箱中“登录”选项卡内的“Login”组件设计而成,也可以自定义设计登录窗口。
本系统登录窗口为自定义设计窗口,设计组件主要有“HTML”选项卡中Table组件用于布局页面、“标准”选项卡中3个TextBox控件、4个Label控件 、3个Button控件和一个CheckBox控件,这些控件具体信息及用途如表1所示。
表1 前台页面用到的控件及用途
2.后台功能代码
系统登录模块主要用于验证用户登录系统时输入的用户名、密码和验证码是否正确,在处理登录页面提交的数据时,首先会根据“管理员”复选框的值来判断是否登陆管理员页面,此功能代码首先if- else语句判断复选框CheckBoxList1控件是否被选中,如果被选中则执行核对用户名、密码和验证码而进入管理员页面,反之则会执行另一段代码,以验证非管理员登录信息,而进入学生考试页面,处理代码如下所示:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class Default : System.Web.UI.Page
{
Datacon dataconn = new Datacon();
protected void Page_Load(object sender, EventArgs e)
{
Session["StuName"] = this.txtUserName.Text;
if (!IsPostBack)
{
Random rnd = new Random();
//生成验证码
this.labValidate.Text = rnd.Next(1000,9999).ToString();
}
}
//==============================找回密码========================
protected void Button3_Click(object sender, EventArgs e)
{
Page.Response.Redirect("InfoPwd.ASP.NETx");
}
//==============================新学生注册=======================
protected void Button2_Click(object sender, EventArgs e)
{
Page.Response.Redirect("zhuce.ASP.NETx");
}
//==============================登录按钮=========================
protected void Button1_Click(object sender, EventArgs e)
{
if (txtValidate.Text != labValidate.Text)
{
Response.Write("<script lanuage=javascript>alert('验证码错误');location='javascript:history.go(-1)'</script>");
}
else
{
if (cblAdminLog.Items[0].Selected == true)
{
this.getcom(1);
}
else
{
this.getcom(2);
}
}
}
//=============================登录控制=====================
private void getcom(int i)
{
SqlConnection con = dataconn.getcon();
con.Open();
SqlCommand com=con.CreateCommand();
switch (i)
{
case 1:
com.CommandText = "select count(*) from tb_Administrator where Name='" + txtUserName.Text + "' and PWD='" + txtPwd.Text + "'";
int count1 = Convert.ToInt32(com.ExecuteScalar());//获取SQL语句的值 强制转换成数值类型
if (count1 > 0)
{
Application["Name"] = txtUserName.Text;//成功
Application["PWD"] = txtPwd.Text;//成功
Page.Response.Redirect("HouAdmin/admin.ASP.NETx");
}
else
{
Response.Write("<script lanuage=javascript>alert('用户名或密码有误!');location='javascript:history.go(-1)'</script>");
return;
}
break;
case 2:
com.CommandText = "select count(*) from tb_Student where ID='" + txtUserName.Text + "' and PWD='" + txtPwd.Text + "'";
int count2 = Convert.ToInt32(com.ExecuteScalar());
if (count2 > 0)
{
Application["ID"] = txtUserName.Text;
Application["PWD"] = txtPwd.Text;
Page.Response.Redirect("QianUser/zaixian_kaoshi.ASP.NETx");
}
else
{
Response.Write("<script lanuage=javascript>alert('用户名或密码有误!');location='javascript:history.go(-1)'</script>");
return;
}
break;
}
con.Close();
}
}
3.2 后台管理页面设计
本系统的后台管理主要有:管理员、学生、考试题目、专业和课程信息的添加、删除和修改等操作,由于这些信息的执行操作大致是相同的,所以我们在这里主要介绍管理员信息的各种操作。
管理员信息设置模块包括管理员信息列表、查询管理员、添加管理员、修改管理员信息和删除管理员5部分功能,要实现这些功能,运行效果如图2所示。
图2 管理员页面的设计结果
本页主要用到的控件及用途如表2所示。
表2 管理员信息设置模块用到的控件及用途
控件的属性设置,可以通过前台代码实现,也可以在“控件属性”对话框中的设置实现,本页中使用的控件属性设置请参见如下代码:
1.管理员信息列表
管理员列表通过ASP.NET.NET2005提供的GridView控件把管理员的基本信息显示出来。在每条信息后设置执行修改及删除功能的超链接按钮。每次登录此页面时程序都会自动执行后台Page_Load页面加载事件中的SQL语句,将检索到的数据通过GridView控件显示在页面中。
编写此代码前,首先在命名空间区域中引用using System.Data.SqlClient命名空间,然后在Page_Load页面加载事件中定义执行需要显示在GridView控件中信息的SQL语句,通过调用公共类执行该语句完成数据显示操作,后台主要实现数据显示功能代码如下所示:
Datacon dataconn = new Datacon();
protected void Page_Load(object sender, EventArgs e)
{
dataconn.ecadabindinfostring(gvAdminInfo, "select * from tb_Administrator ORDER BY ID DESC", "ID");
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
gvAdminInfo.PageIndex = e.NewPageIndex;
gvAdminInfo.DataBind();
}
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
dataconn.eccom("delete from tb_Administrator where ID='" + gvAdminInfo.DataKeys[e.RowIndex].Value + "'");
Page.Response.Redirect("admin.ASP.NETx");
}
protected void LinkButton10_Click(object sender, EventArgs e)
{
Page.Response.Redirect("AdminInsert.ASP.NETx");
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Cells[2].Text = Convert.ToString(Convert.ToDateTime(e.Row.Cells[2].Text).ToShortDateString());
}
}
2.管理员信息查询
编写此代码前,双击前台“查询”按钮,同时会进入此按钮后台的Click单击事件中,然后在Click单击事件中定义执行模糊查询的SQL语句,通过调用公共类执行该语句,将结果显示在GridView控件中完成查询操作,后台主要实现查询功能代码如下所示:
Datacon dataconn = new Datacon();
protected void Button1_Click(object sender, EventArgs e)
{
dataconn.ecadabind(gvAdminInfo, "Select * From tb_Administrator Where " + ddlAdminName.SelectedValue + " Like '%" + txtSelect.Text + "%'");
}
3.添加管理员
添加管理员主要是添加管理员姓名和密码,本页主要涉及到的控件如表3所示。
表3 添加管理员页面涉及到的控件及用途
编写此代码前,首先在命名空间区域中引用using System.Data.SqlClient命名空间,然后在“添加”按钮的Click单击事件中定义执行添加管理员的SQL语句,通过调用公共类执行该语句完成操作。处理添加管理员表单数据的关键代码如下:
Datacon dataconn = new Datacon();
//=========================添加管理员=======================
protected void Button1_Click(object sender, EventArgs e)
{
dataconn.eccom("insert into tb_Administrator(Name,PWD)values('" + txtAdminName.Text + "','" + txtAdminPwd.Text + "')");
Page.Response.Redirect("admin.ASP.NETx");
}
//================返回到管理员信息列表界面==================
protected void Button2_Click(object sender, EventArgs e)
{
Page.Response.Redirect("admin.ASP.NETx");
}
添加管理员页面的运行结果如图4所示。
图3 添加管理员页面运行结果
3.3 学生注册
学生注册是为了保存学生的基本信息。包括学生证号、学生姓名、密码、密码问题、问题答案、性别和所学专业。所学专业通过DropDownList控件列出,供学生选择。学生注册页面的设计页面如图5所示。
图4 学生注册
学生注册页面涉及的HTML表单元素如表4所示。
表4 学生注册页面涉及的HTML表单元素
编写此代码前,首先在命名空间区域中引用using System.Data.SqlClient命名空间,然后在“注册”按钮的Click单击事件中定义执行完成学生注册的SQL语句,通过调用公共类执行该语句完成操作。完成学生注册的关键代码如下:
Datacon dataconn = new Datacon();
protected void Button1_Click(object sender, EventArgs e)
{
dataconn.eccom("insert into tb_Student"
+"(ID,Name,PWD,question,answer,Sex,profession)"
+"values('" + this.txtStuID.Text + "','" + this.txtStuName.Text + "','"
+ this.txtStuPwd.Text + "','" + this.txtQuePwd.Text + "','"
+ this.txtAnsPwd.Text + "','" + this.ddlSex.Text + "','"
+ Request["DropDownList2"] + "')");
}
3.4 忘记密码
很多情况下,学生会将密码遗忘或丢失,这样就无法登录自己的学生帐号,为了避免造成不必要的损失,笔者设计了找回密码的功能。
找回密码主要分为三个页面来完成。页面一:输入已注册的学生证号;页面二:系统会根据输入学生证号把相应的密码问题列出来,然后输入问题答案;页面三,如果问题答案正确,则成功找回密码。忘记密码三个页面的设计结果分别如图6、图7、图8所示。
图5 忘记密码1
图6 忘记密码2
图7 忘记密码3
实现密码找回功能的代码很简单,主要是判断输入的学生证号是否存在,以及该学生的密码提示问题和密码答案是否正确。
在页面一中,需要输入学生证号,系统会自动核对其是否存在,实现代码如下:
Datacon dataconn = new Datacon();
protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection con = dataconn.getcon();
con.Open();
SqlCommand com = new SqlCommand("select count(*) from tb_Student where ID='" + txtStuID.Text + "'", con);
int count = Convert.ToInt32(com.ExecuteScalar());
if (count > 0)
{
Session["ID"] = txtStuID.Text;
Page.Response.Redirect("InfoPwdd.ASP.NETx");
}
else
{
Response.Write("<script>alert('无此学生编号、或输入有误');location='javascript:history.go(-1)'</script>");
return;
}
con.Close();
}
单击“确定”按钮,如该学生证号存在,则进入页面二,此处需要输入该学生的密码问题和答案,如核对无误,直接进入页面三,并直接在页面三中显示出该学生的密码,实现此功能的关键代码如下:
Datacon dataconn = new Datacon();
protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection con = dataconn.getcon();
con.Open();
SqlCommand mycom = new SqlCommand("select count(*) from tb_Student where answer='"
+ txtAnsPwd.Text + "' and id=" + Convert.ToString(Session["ID"]), con);
int count = Convert.ToInt32(mycom.ExecuteScalar());
if (count > 0)
{
Page.Response.Redirect("InfoPwddd.ASP.NETx");
}
else
{
Response.Write("<script>alert('提示问题答案输入有误!');location='javascript:history.go(-1)'</script>");
return;
}
con.Close();
}
第五章 系统实施
系统实施,就是将系统的设计付诸实现,以达到目的,他包括程序设计、人员培训、系统测试与切换。
5.1人员培训
人员培训是指对系统投入后将对该系统进行操作的用户进行培训,根据他们的计算机的基础,提前对他们进行培训,使他们适应并熟悉新的操作方法。本系统功能实现相对清晰,人员培训也相对简单,只要对其工作流程有一大致了解,经过实习即可很快胜任。
5.2系统调试
测试一个系统大致有:程序测试,联合测试,验收测试,系统测试四个层次。测试过程是先进行程序测试,再联合测试,验收测试,最后系统测试。
1. 程序测试
即模块测试,这是编程人员自己进行的,重要考虑的方面有:模块界面,内部数据结构,独立路径,错误处理,边界条件等项目。
2. 联合测试
是根据模块结构图采用从上而下,由下到上进行测试,发现总体问题,把几个密切相关的程序一起调试,这一部调试主要是接口调试,比如接口是否匹配,通讯规则是否合理等。
3. 验收测试
是检验系统说明书的各项功能与性能是否实现,是否满足用户的要求,这一阶段,用户和开发人员一起执行。可清其他同学以用户和管理员的不同身份进行测试。
4. 系统测试
这阶段包括:各系统之间的接口是否合理;系统运行功能是否达到系统目标要求;系统遭破坏后能否按要求恢复。
第六章 总结
省略
7.1可行性分析阶段心得
省略
7.2设计心得
省略
结束语及谢词
省略
参考文献
[1]宝贝工作室。DreamweaverUltradev4动态网站[M]。北京:机械工业出版社,2001:22-25,34-37,104-136。
[2]覃剑锋,张刚。ASP.NET网站建设专家[M]。北京:机械工业出版社,2001:61-75,141-176。
[3]王兴东,千丽霞,曹明玉等。ASP.NET&ASP.NET.NET应用编程150例[M]。北京:电子工业出版社,2004:35-150。
[4] Joyce J.Evans,王勇,盖江南等。Flash MX,Dreamweaver MX,Fireworks MX,FreeHand MX四合一宝典[M]。北京:机械工业出版社,2003:9-10。
[5]菩提树工作室。实战DreamweaverMX网页制作[M]。北京:机械工业出版社,2003:246-257。
[6] 木林森.C#和ASP.NET程序设计教程. 清华大学出版社
[7] 普悠玛 ASP.NET程序设计示例导学.北京科海电子出版社
[8] 廖信彦.ASP.NET交互式Web数据库程序设计.中国铁道出版社
[9]、木林森 C#和ASP.NET程序设计教程 . 清华大学出版社
[10]、普悠玛 ASP.NET程序设计示例导学. 北京科海电子出版社
[11]、普悠玛 数位科技.VB.NET程序开发实务. 中国铁道出版社
[12]、王超,张鹏 ASP.NET/XML深入编程技术 北京希望电子出版社
[13]、廖信彦 ASP.NET交互式Web数据库程序设计. 中国铁道出版社
[14]张龙祥. UML与系统分析设计. 人民邮电出版社. 2001.
[15]Ivar Jacobson, Grady Booch, James Rumbaugh著. 周伯生,冯学民,樊东平 译. [16]统一开发过程. 机械工业出版社. 2002.
[17]Boggs,W ,鲍戈斯, Boggs,M.著. 邱仲潘等译. UML with Rational Rose从入[18]门到精通. 电子工业出版社. 2000.
[19] (美)Meilir Page-Jones著. Page-Jones; 包晓露等译. UML面向对象设计基础.人民邮电出版社.2001.
[20]蒙新. ASP.NET编程技术与综合实例演练… 清华大学出版社. 2001.
[21]陈会安. ASP.NET网页制作彻底研究. 人民邮电出版社.2000.10.
[22]贵广,郭宝龙. ASP.NET动态网站建站实例与技巧. 西安电子科技大学出版社. 2001.5.
[213]萨师煊、王珊… 数据库系统概论. 高等教育出版社. 2000.2
5、资源下载
本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。
序号 | 毕业设计全套资源(点击下载) |
---|---|
本项目源码 | 基于C#+asp.net+sqlserver的网络在线考试系统设计与实现(源码+文档)_C#_BS架构_网络在线考试系统.zip |