基于ASP.NET网上报名系统的设计与实现

时间:2022-02-27 05:24:51

基于ASP.NET网上报名系统的设计与实现

[摘要]本文主要论述了基于的网上报名系统的设计与实现。对网上报名系统的开发环境、功能结构、系统各功能模块的设计和系统的实现过程,经过实际运行测试,验证了该思路的正确性,可实现用户的在线报名,以及管理员的后台管理,基本达到了预期目标。

[关键词]ASP NET 报名系统 设计 实现

随着计算机网络技术的迅速发展,我国高校的教育教学模式逐步发生着变革,信息化建设日益成为推动高校教育教学改革的有效抓手。在高校的信息化建设进程中,要使教与学的各个环节都能达到均衡发展,这就要求从软件和硬件两个方面把学校建成一流的信息管理和教育教学的平台。

考试报名是高校各类考试前的第一个环节,传统的考试报名流程相当的繁琐,这就给教学管理环节带来了沉重的负担。为了降低教学管理人员的工作量,提高他们的工作效率,并且能够更加快速、高效地收集海量的考生信息,传统的考试报名流程就需要网络化计算机技术的支撑,因此,网上报名系统在各类高校中日益流行了起来。

一、开发环境与系统功能结构

(一)的开发环境

(1)简介

是Microsoft公司推出的新一代建立动态Web应用程序的开发平台,是一种建立动态Web应用程序的新技术,它是.NET框架的一部分,我们可以使用任何.NET兼容的语言(如Visual Basic、C#)来编写应用程序。与Java、PHP和Perl等高级技术相比,具有方便性、灵活性、生产效率高、安全性高及面向对象等优点,是目前主流的网络编程技术之一。[1]

(2) 的运行原理

在中,当一个HTTP请求发送到服务器并被IIS接收之后,IIS首先通过客户端请求的页面类型为其加载相应的.dll文件,然后在处理过程中将这条请求发送给能够处理这个请求的模块。在中,这个模块叫做HttpHandler(HTTP处理程序组件),之所以.aspx文件可以被服务器处理,就是因为在服务器端有默认的HttpHandler专门处理.aspx文件。IIS在将这条请求发送给能够处理该请求的模块之前,还需要经过一些HttpModule的处理,这些都是系统默认的Modules(用于获取当前应用程序的模块集合),在该HTTP请求传到HttpHandler之前,要经过不同的HttpModule的处理。[2]

(二)系统功能结构

根据考试报名流程的特点,可以将网上报名系统分为考生报名和系统管理员管理两个部分,前者用于实现考生信息的填报、上传照片,打印报名表;系统管理员管理主要用于对考生信息的查找、修改和删除。网上报名系统的系统功能结构图为:

二、系统主功能模块的设计与实现

(一)考生报名模块

(1)基本信息的录入

考生报名基本信息的录入可以通过以下主要代码来实现:

protected Boolean addUser(string xm,string xb,string mz,string csny,string jg,string zzmm)

{

Boolean flag = false;

String sqlstr = "insert into userinfo (xm,xb,mz,csny,jg,zzmm)values(@xm,@xb,@mz,@csny,@jg,@zzmm)";

String urlsource = Server.MapPath("App_Data\\tables.mdb");

String constr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + urlsource + ";User ID=admin";

try

{

OleDbConnection con = new OleDbConnection(constr);

con.Open();

OleDbCommand com = new OleDbCommand(sqlstr, con);

com.Parameters.AddWithValue("@xm", xm);

com.Parameters.AddWithValue("@xb", xb);

com.Parameters.AddWithValue("@mz",mz);

com.Parameters.AddWithValue("@csny", csny);

com.Parameters.AddWithValue("@jg", jg);

com.Parameters.AddWithValue("@zzmm", zzmm);

}

(2)提交照片

在考生报名模块中,照片的上传是比较重要的环节,这里对考生上传照片的格式和大小做了规定:照片只能是.jpg、.png和.gif三种格式,大小不能超过2M,我们可以通过如下代码来实现:

if (this.FileUpphoto.HasFile)

{

string imgUrl=this.FileUpphoto.FileName.ToString();

ViewState["imgurl"] = imgUrl;

int lastFix = imgUrl.LastIndexOf(".");

string imgType=imgUrl.Substring(lastFix+1,3).ToLower();

if (imgType != "jpg" && imgType != "png" && imgType != "gif")

{

this.lblmsg.Text = "您只能上传:JPG;PNG;GIF 格式的图片";

return;

}

string saveUrl=Server.MapPath("~/UploadImages/");

name = this.txtname.Text;

saveUrl += this.lblbian.Text + "." + imgType;

try

{

this.FileUpphoto.SaveAs(saveUrl);

this.lblmsg.Text = "恭喜您,上传成功,您已经完成了报名!";

this.images.ImageUrl = "~/UploadImages/" + this.lblbian.Text + "." + imgType;

}

}

else

{

this.lblmsg.Text = "没有找到文件!请选择图片路径";

}

(3)报名编号的获取

考生在提交报名信息之后,可以获得一个报名编号,实现此功能的代码如下:

protected int getBiaoHao()

{

int nums = 0;

String sqlstr = "select top 1 id from userinfo order by id desc";

String urlsource = Server.MapPath("App_Data\\tables.mdb");

String constr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + urlsource + ";User ID=admin";

try

{

OleDbConnection con = new OleDbConnection(constr);

con.Open();

OleDbCommand com = new OleDbCommand(sqlstr, con);

OleDbDataReader olr = com.ExecuteReader();

if (olr.Read())

{

nums = int.Parse(olr[0].ToString());

}

olr.Close();

con.Close();

}

catch (Exception ex)

{

Response.Write(ex.Message);

}

return nums;

}

(4)打印报名表

报名表的打印可以动态向页面添加一段script脚本语言:

function test()

{

window.print(this.document.tbPrint);

}

(二)管理员管理模块

(1)管理员登录

管理员在登录界面输入用户名和密码即可进入后台进行管理,登录界面可通过如下代码实现:

protected void ImageButton1_Click(object sender, ImageClickEventArgs e)

{

string name = this.txtname.Text;

string pass = this.txtpass.Text;

if (name == "admin" && pass == "admin")

{

this.Session.Add("name", name);

Response.Redirect("~/admin.aspx");

}

else

{

this.txtname.Text = "";

this.txtpass.Text = "";

this.lblmgs.Text = "账号或密码错误,请重新输入";

}

}

(2)后台管理

管理员进入后台管理界面,可以对考生信息进行修改和删除操作,该功能的实现主要是通过SQL语句对后台的数据库进行操作,主要涉及以下三句SQL语句:

DeleteCommand="DELETE FROM [userinfo] WHERE [id] = ?" InsertCommand="INSERT INTO [userinfo] ([数据库表中的字段名]VALUES (?)"

SelectCommand="SELECT * FROM [userinfo] ORDER BY[id]DESC"

UpdateCommand="UPDATE [userinfo] SET [数据库表中的字段名]= @数据库表中的字段名 WHERE [id] = @id">

三、总结

近年来,我国各大高校都纷纷投入数字化校园的建设进程之中,数字时代的到来,给教师和学生的生活、工作都带了很多便利。本人所介绍的基于的网上报名系统的使用大大简化了教务管理人员的工作流程,当然它还存在一定的不足和缺陷,今后笔者会进一步完善此系统,争取让它可以在不需要修改任何代码的情况下,与数字化校园中的其它系统进行无缝连接。

[参考文献]

[1]刘友生基础教程[M].北京:冶金工业出版社,2007.

[2]庞娅娟,房大伟,吕双. 从入门到精通[M].北京:清华大学出版社,2010.

(作者单位:南京政治学院信息管理中心 南京)

上一篇:运输管理课程实践教学方案设计 下一篇:高校理论教学与实践教学的学分/学时换算研究