5.2 验证码生成 为增强系统登录安全性,特增加验证码功能。使用空白网页充当验证图片,空白网页被限定了流的输出方式,限定为二进制流输出,通过一个随机数生成随机数字字符串,将字符串通过画笔转化为BITMAP生成二进制缓存流,以RESPONSE输出流。 http://www.paper51.com 页面Randmeint.aspx.cs: copyright paper51.com
paper51.com 5.3 添加模块 内容来自论文无忧网 www.paper51.com 主要实现对知识库内容的添加,以达到充实知识库的目的。操作过程如图5-2、5-3所示 http://www.paper51.com 页面:addExercise.aspx 内容来自论文无忧网 www.paper51.com
http://www.paper51.com
copyright paper51.com 图5-2 习题的添加 内容来自www.paper51.com
http://www.paper51.com
http://www.paper51.com 图5-3 习题添加成功 http://www.paper51.com 如图5-3所示:若阅读编号为不限制,则是录入单选题,若是其他,则分别对应相应的阅读篇目。 内容来自论文无忧网 www.paper51.com paper51.com 5.4 修改删除模块 copyright paper51.com 以词汇内容的修改和删除为例: paper51.com 页面:Updatevocabulary.aspx 内容来自论文无忧网 www.paper51.com
当点击编辑的时候,可以对词汇各部分内容进行修改,当点击删除时,则可以删除当条词汇相关的所有内容,操作过程如图5-4、5-5所示: 内容来自www.paper51.com 内容来自www.paper51.com
内容来自www.paper51.com
图5-4 点击编辑后的页面显示 copyright paper51.com
内容来自论文无忧网 www.paper51.com 内容来自论文无忧网 www.paper51.com 图5-5 点击删除后,词汇内容不复存在 内容来自www.paper51.com 内容来自www.paper51.com copyright paper51.com // 绑定下拉列表数据 copyright paper51.com private void BindDropDownList() 内容来自www.paper51.com
{ copyright paper51.com foreach(DataGridItem item in this.TextDatagrid.Items) 内容来自论文无忧网 www.paper51.com { paper51.com DropDownList list=new DropDownList(); 内容来自论文无忧网 www.paper51.com list=(DropDownList)item.FindControl("DdlType"); 内容来自www.paper51.com
if(list!=null) paper51.com { copyright paper51.com
ILessonAccess lesson=new LessonAccess(); http://www.paper51.com DataSet ds=lesson.getidandtitle(); copyright paper51.com DataTable table=ds.Tables[0]; 内容来自论文无忧网 www.paper51.com foreach(DataRow row in table.Rows) copyright paper51.com { paper51.com ListItem dditem=new ListItem(); 内容来自www.paper51.com
dditem.Value=row["PKID"].ToString(); 内容来自www.paper51.com dditem.Text=row["TITLE"].ToString(); 内容来自www.paper51.com list.Items.Add(dditem); http://www.paper51.com
} paper51.com } http://www.paper51.com } 内容来自论文无忧网 www.paper51.com
} copyright paper51.com paper51.com
内容来自www.paper51.com
copyright paper51.com //分页,点击页标事件 copyright paper51.com private void TextDatagrid_PageIndexChanged_1(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e) http://www.paper51.com { http://www.paper51.com this.TextDatagrid.CurrentPageIndex=e.NewPageIndex; http://www.paper51.com this.bindReading(); copyright paper51.com } copyright paper51.com //点击编辑后出现的 取消按钮的 取消事件 内容来自www.paper51.com
private void TextDatagrid_CancelCommand_1(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) copyright paper51.com { 内容来自www.paper51.com this.TextDatagrid.EditItemIndex=-1; http://www.paper51.com this.bindReading(); paper51.com } paper51.com 5.5 查询模块 http://www.paper51.com 可以通过键入关键字查询相关内容,以习题的查询为例,如图5-6所示: 内容来自www.paper51.com 页面:ExriseChoice.aspx paper51.com copyright paper51.com 图5-6习题查询功能图 copyright paper51.com
在查看答案以前,页面上的答案时隐藏的,只有在点击查看正确答案后才能看到答案的显示,相关代码如下: 内容来自论文无忧网 www.paper51.com paper51.com copyright paper51.com // 设定页面上所有的答案隐藏 paper51.com private void SetAnswerNoShow() copyright paper51.com { 内容来自www.paper51.com Label lbl=new Label(); http://www.paper51.com foreach(RepeaterItem item in this.Rept.Items) paper51.com
{ http://www.paper51.com lbl=(Label)item.FindControl("lblAnswer"); paper51.com
lbl.Visible=false; paper51.com lbl=new Label(); 内容来自论文无忧网 www.paper51.com lbl=(Label)item.FindControl("lbl"); http://www.paper51.com lbl.Visible=false; http://www.paper51.com } 内容来自www.paper51.com } 内容来自www.paper51.com copyright paper51.com // 数据绑定至页面 http://www.paper51.com
//题目类型private void bindReading(string name) paper51.com { copyright paper51.com IChoiceTestRules querycho=new ChoiceRules(); 内容来自www.paper51.com
this.Rept.DataSource =querycho.getChoiceTest(name); http://www.paper51.com this.Rept.DataBind(); 内容来自论文无忧网 www.paper51.com
} copyright paper51.com // 答案提交 copyright paper51.com private void submit_Click(object sender, System.EventArgs e) 内容来自论文无忧网 www.paper51.com { 内容来自论文无忧网 www.paper51.com Label lbl=new Label(); http://www.paper51.com foreach(RepeaterItem item in this.Rept.Items) 内容来自www.paper51.com { 内容来自论文无忧网 www.paper51.com lbl=(Label)item.FindControl("lblAnswer"); 内容来自www.paper51.com
lbl.Visible=true; paper51.com lbl=new Label(); 内容来自www.paper51.com lbl=(Label)item.FindControl("lbl"); http://www.paper51.com
lbl.Visible=true; 内容来自www.paper51.com
} copyright paper51.com
paper51.com
paper51.com 对于上方的圆点选项,当选定单选题时,会调出数据库中习题编号为0的习题进行显示,而当选定阅读题时,则系统会调出数据库中习题编号不为0的所有习题进行显示,相关代码如下: 内容来自www.paper51.com
copyright paper51.com if(this.RdType.SelectedIndex==0) 内容来自论文无忧网 www.paper51.com { copyright paper51.com this.bindReading("单选"); 内容来自www.paper51.com this.Session["type"]="单选"; 内容来自www.paper51.com this.SetAnswerNoShow(); 内容来自论文无忧网 www.paper51.com } paper51.com else copyright paper51.com { 内容来自论文无忧网 www.paper51.com
this.bindReading("阅读"); paper51.com this.Session["type"]="阅读"; 内容来自www.paper51.com
this.SetAnswerNoShow(); 内容来自www.paper51.com } 内容来自www.paper51.com
|