侯伟东河北省廊坊市文安县教育局065800
2015年,李克强总理所做的政府工作报告中,“创新”关键词出现了38处,并提出“打造并推动‘大众创业,万众创新’”。报告使人为之振奋、鼓舞之余,分享一下近年来在电教工作中利用.NET技术创新信息数据处理的一些做法,总结过去,创新未来。
作为一个教育系统的管理者,经常需要收集、整理、运用大量学校数据信息。传统的做法是:前期,在网站或者公共邮箱发布通知,电话逐一通知并要求学校定时发送到指定邮箱;后期,接收每个学校的邮件,并下载附件数据,经过打开、复制、粘贴、剔除、排版、整理、筛选、复查等过程,最终才能形成有效的数据收集、整理和运用。如此做法,工作量大,效率低,数据错误率较高。
解决问题就是创新。.NET和数据库技术完全可以把工作着从繁杂的数据收集、整理和应用中解放出来,B/S架构让工作者真正体验到工作的乐趣。为了更好地说明问题,我们将它实例化。
一、软件。Windows7旗舰版、MicrosoftOfficeAccess2003、VisualStudio2008专业版。
二、统计全县中小学计算机和多媒体的数量。要求如下:
三、ACCESS数据库设计。
四、启动MicrosoftOfficeAccess2003,设计数据库结构。数据库名称:db,表名称s1。
五、启动VisualStudio2008专业版。创建——网站——ASP.NET网站——.NET在信息数据处理中的简单应用(位置:文件系统。语言:Visualc#)。
六、将数据库db复制到项目App-Data文件夹下。
七、打开VisualStudio2008,菜单——新建——项目——类库dal。
八、添加应用。
九、右单击类库dal,添加新项-添加类olehelp.cs和olecado.cs。
十、olehelp.cs和olecado.cs数据引用及代码如下:
olehelp.cs(数据库增、删、查、改)
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Data.OleDb;
usingSystem.Data;
usingSystem.Configuration;
namespacedal
{
publicclassolehelp
{
privateOleDbConnectionconn=null;
privateOleDbCommandcmd=null;
privateOleDbDataReaderoddr=null;
publicolehelp()
{
conn=newOleDbConnection(ConfigurationManager.AppSettings["connstring"].ToString());
}
privateOleDbConnectiongetconn()
{
if(conn.State==ConnectionState.Closed)
{
conn.Open();
}
returnconn;
}
///<summary>
///执行带参数的查询语句
///</summary>
///<paramname="cmdtext">语句</param>
///<paramname="paras">参数</param>
///<paramname="ct">命令格式</param>
///<returns>数据表</returns>
publicDataTableexecquery(stringcmdtext,OleDbParameter[]paras,CommandTypect)
{
DataTabledt=newDataTable();
cmd=newOleDbCommand(cmdtext,getconn());
cmd.Parameters.AddRange(paras);
cmd.CommandType=ct;
using(oddr=cmd.ExecuteReader(CommandBehavior.CloseConnection))
{
dt.Load(oddr);
}
returndt;
}
}
}
olecado.cs
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Data;
usingSystem.Data.OleDb;
namespacedal
{
publicclassolecado
{
privateolehelpolehelper;
publicolecado()
{
olehelper=newolehelp();
}
///<summary>
///增加数据
///</summary>
///<paramname="c1">学校名称</param>
///<paramname="c2">学校类型</param>
///<paramname="c3">班级数</param>
///<paramname="c4">学生数</param>
///<paramname="c5">计算机数量</param>
///<paramname="c6">多媒体数量</param>
///<paramname="c7">校长姓名</param>
///<paramname="c8">联系方式</param>
///<returns></returns>
publicboolinsert(stringc1,stringc2,stringc3,stringc4,stringc5,stringc6,stringc7,stringc8)
{
boolflag=false;
stringcmdtext="insertintos1(c1,c2,c3,c4,c5,c6,c7,c8)values(@c1,@c2,@c3,@c4,@c5,@c6,@c7,@c8)";
OleDbParameter[]paras=newOleDbParameter[]{newOleDbParameter("@c1",c1),newOleDbParameter("@c2",c2),newOleDbParameter("@c3",c3),newOleDbParameter("@c4",c4),newOleDbParameter("@c5",c5),newOleDbParameter("@c6",c6),newOleDbParameter("@c7",c7),newOleDbParameter("@c8",c8)};
intres=olehelper.execnonquery(cmdtext,paras,CommandType.Text);
if(res>0)
{
flag=true;
}
returnflag;
}
}
}
十一、成功“生成”后,结构及编译提示。
十二、调用。添加“新项”Default3.aspx;文件——添加——现有项目。添加应用。
十三、Default3.aspx.cs代码。
web.config中添加
<appSettings>
<addkey="connstring"value="provider=microsoft.jet.oledb.4.0;datasource=|datadirectory|db.mdb"/>
</appSettings>
Default3.aspx.cs
usingSystem;
usingSystem.Collections;
usingSystem.Configuration;
usingSystem.Data;
usingSystem.Linq;
usingSystem.Web;
usingSystem.Web.Security;
usingSystem.Web.UI;
usingSystem.Web.UI.HtmlControls;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.WebControls.WebParts;
usingSystem.Xml.Linq;
usingSystem.Data.OleDb;
usingdal;
publicpartialclassDefault3:System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
}
protectedvoidButton1_Click(objectsender,EventArgse)
{
stringc1=TextBox1.Text;
stringc2=DropDownList1.SelectedValue;
stringc3=TextBox3.Text;
stringc4=TextBox4.Text;
stringc5=TextBox5.Text;
stringc6=TextBox6.Text;
stringc7=TextBox7.Text;
stringc8=TextBox8.Text;
boolb=newolecado().insert(c1,c2,c3,c4,c5,c6,c7,c8);
}
}
十四、调试,添加数据成功。
写在最后:(1)程序编译后在IIS中发布,数据自动接收,事半功倍,其乐无穷。(2).NETWeb开发和数据库的增、删、查、改完美结合,可完成日常大数据收集、处理应用等需求,限于篇幅,仅抛砖引玉。