




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
任务4任务4课程选修和退选功效实现4/11/20251MicrosoftSQLServer2005第1页任务4课程选修和退选每学期初,教务处会在一周时间内将本学期开设选修课课程班在网上展示,并让学生登录后进行课程班选修和退选。第一项目小组要求李勋同学基于ASP.NET技术创建学生网上课程选修和退选应用程序,并经过调用“教学管理数据库”中对应存放过程来实现该功效。【任务描述与分析】4/11/20252MicrosoftSQLServer2005第2页(1)学生网上课程选修界面任务4课程选修和退选【任务实施与拓展】4/11/20253MicrosoftSQLServer2005第3页(2)学生网上课程退选界面任务4课程选修和退选【任务实施与拓展】4/11/20254MicrosoftSQLServer2005第4页(3)学生网上课程选修界面(已选过课程)任务4课程选修和退选【任务实施与拓展】4/11/20255MicrosoftSQLServer2005第5页(4)课程退选提醒和成功对话框任务4课程选修和退选【任务实施与拓展】4/11/20256MicrosoftSQLServer2005第6页按照原型设计进行对应网页框架设计任务4课程选修和退选【任务实施与拓展】4/11/20257MicrosoftSQLServer2005第7页任务4课程选修和退选【任务实施与拓展】1.在站点【http://localhost/ManageModel_Web】中添加一个新网页应用程序“SelectCourse.aspx”文件,设计界面如图所表示。4/11/20258MicrosoftSQLServer2005第8页任务4课程选修和退选【任务实施与拓展】一样,再添加一个名为“ReturnCourse.aspx”新网页,设计界面如图所表示。4/11/20259MicrosoftSQLServer2005第9页任务4课程选修和退选【任务实施与拓展】2.设置上两个图中GridView组件【自动套用格式】为【雨天】格式。3.在下列图中【可用字段】栏内选择【CheckBoxField】项,单击【添加】按钮,添加一个“CheckBoxField”类型字段,并设置【HeaderText】属性为“勾选”,然后单击窗口右下角【将此字段转换为TemplateField】项,将这个字段转换为【TemplateField】字段。4/11/202510MicrosoftSQLServer2005第10页任务4课程选修和退选【任务实施与拓展】4/11/202511MicrosoftSQLServer2005第11页任务4课程选修和退选【任务实施与拓展】4.接着在上图【可用字段】栏内选择【BoundField】项,单击【添加】按钮,添加七个“BoundField”类型字段。它们【DataField】和【HeaderText】属性分别为“CourseClassID、CourseName、TeacherName、TeachingPlace、TeachingTime、MaxNumber、SelectedNumber”和“课程班编码、课程名称、任课教师、教学地点、教课时间、允许选修数、已选数”。其中【课程班编码】字段【Visible】属性设置为“False”。5.单击“网上退课”图中【编辑列】选项,弹出以下列图所表示【字段】对话框,在【可用字段】栏内选择【BoundField】项,单击【添加】按钮,添加五个“BoundField”类型字段。它们【DataField】和【HeaderText】属性分别为“CourseClassID、CourseName、TeacherName、TeachingPlace、TeachingTime”和“课程班编码、课程名称、任课教师、教学地点、教课时间”。4/11/202512MicrosoftSQLServer2005第12页任务4课程选修和退选【任务实施与拓展】6.在【可用字段】栏内选择【CommandField】节点中【删除】项,单击【添加】按钮,添加一个“CommandField”类型字段,将它属性【HeaderText】和【DeleteText】改为“退选”。4/11/202513MicrosoftSQLServer2005第13页7.课程选修和退选页面中各个组件属性设置情况分别以下面两个表所表示任务4课程选修和退选组件ID组件类型说明TeacherDDListDropDownListWidth属性:120px,AutoPostBack属性:“True”CourseClassDDListDropDownListWidth属性:300px【任务实施与拓展】组件ID组件类型说明TeacherDDListDropDownListWidth属性:120px,AutoPostBack属性:“True”4/11/202514MicrosoftSQLServer2005第14页网页功效实当代码(SelectCourse.aspx.cs)学生课程选修功效实现
1.课程班信息查询存放过程创建2.课程班信息查询并绑定
3.学生课程选修功效实现
任务4课程选修和退选【任务实施与拓展】4/11/202515MicrosoftSQLServer2005第15页任务4课程选修和退选1、课程班信息查询存放过程创建【任务实施与拓展】首先创建一个名为“SP_StuCourseClass”存放过程,基于某个学生查询其能够选修全部课程班信息(不包含该学生已经选修课程班和已经选满课程班)。USETeaching_SystemGOCREATE
PROCEDURE
Proc_StuCourseClass
@StuId
CHAR(10)ASSELECT
CourseClassId,CourseName,TeacherName,TeachingPlace,TeachingTime,MaxNumber,SelectedNumberFROM
TB_CourseClass
TCC,Tb_Course
TC,Tb_Teacher
TTWHERE
TCC.CourseID=TC.CourseID
AND
TCC.TeacherID=TT.TeacherID
AND
FullFlag='U'
ANDCourseClassID
NOT
IN
(SELECT
CourseClassID
FROM
Tb_SelectCourse
WHERE
StuID=@StuID)4/11/202516MicrosoftSQLServer2005第16页任务4课程选修和退选2、课程班信息查询并绑定
【任务实施与拓展】在文件“SelectCourse.aspx.cs”头部添加代码“usingSystem.Data.SqlClient;”。为在此网页中显示某个登录学生能够选修课程班信息,在“SelectCourse.aspx.cs”文件方法“Page_Load()”中添加以下代码:if(!Page.IsPostBack){//建立数据库连接,从Web.config文件获取数据库连接字符串SqlConnectionCourseClassConn=new
SqlConnection();CourseClassConn.ConnectionString=ConfigurationManager.ConnectionStrings["ConnStr"].ToString();CourseClassConn.Open();4/11/202517MicrosoftSQLServer2005第17页任务4课程选修和退选【任务实施与拓展】//调用存放过程SqlCommandCourseClassCmd=new
SqlCommand(“Proc_StuCourseClass",CourseClassConn);//说明SqlCommand类型是个存放过程CourseClassCmd.CommandType=CommandType.StoredProcedure;//添加存放过程参数,从全局Session变量获取学号值CourseClassCmd.Parameters.Add("@StuID",SqlDbType.Char,10).Value=Session["StuId"].ToString();SqlDataAdapterStuGradeAdapter=new
SqlDataAdapter(CourseClassCmd);//将SqlDataAdapter对象中数据填充到DataSet对象表"StuSelectCourseTable"DataSetStuGradeDS=new
DataSet();StuGradeAdapter.Fill(StuGradeDS,"StuSelectCourseTable");//关闭数据库连接CourseClassConn.Close();4/11/202518MicrosoftSQLServer2005第18页任务4课程选修和退选【任务实施与拓展】//绑定数据到GridView显示this.CourseClassGView.DataSource=StuGradeDS.Tables["StuSelectCourseTable"];this.CourseClassGView.DataBind();}4/11/202519MicrosoftSQLServer2005第19页任务4课程选修和退选3、学生课程选修功效实现【任务实施与拓展】为了实现当学生在网页上勾选了对应课程班后,单击【确定】按钮,网页应用程序调用数据库存放过程“Proc_StuCourseClass”将学生选择课程班信息插入到数据库中功效,在“SelectCourse.aspx”文件设计界面【确定】按钮上双击,在方法“StuSelectBtn_Click()”中添加下述代码:protected
voidStuSelectBtn_Click(objectsender,EventArgse){stringCourseClassIDs;//定义存放勾选课程班编码字符串变量CourseClassIDs="";//初始化字符串变量4/11/202520MicrosoftSQLServer2005第20页任务4课程选修和退选【任务实施与拓展】//经过循环遍历全部课程班统计,被勾选将其课程班编码放入字符串变量中for(inti=0;i<this.CourseClassGView.Rows.Count;i++){CheckBoxCheckedBox=(CheckBox)this.CourseClassGView.Rows[i].FindControl("CBoxCourseClass");if(CheckedBox.Checked){if(CourseClassIDs=="")CourseClassIDs=this.CourseClassGView.DataKeys[i].Value.ToString();elseCourseClassIDs=CourseClassIDs+","+this.CourseClassGView.DataKeys[i].Value.ToString();}}4/11/202521MicrosoftSQLServer2005第21页任务6-6课程选修和退选【任务实施与拓展】
if(CourseClassIDs==""){//没有勾选课程班,则弹出提醒信息框Response.Write("<SCRIPTlanguage='javascript'>alert('请先选择课程!');</SCRIPT>");}else{//Response.Write(CourseClassIDs);//测试显示选中课程班编码//调用SQLServer中存放过程进行课程选修SqlConnectionSelectCourseConn=new
SqlConnection();SelectCourseConn.ConnectionString=ConfigurationManager.ConnectionStrings["ConnStr"].ToString();SelectCourseConn.Open();4/11/202522MicrosoftSQLServer2005第22页任务6-6课程选修和退选【任务实施与拓展】//调用存放过程
SqlCommandSelectCourseCmd=new
SqlCommand("SP_SelectCourse",SelectCourseConn);//说明SqlCommand类型是个存放过程SelectCourseCmd.CommandType=CommandType.StoredProcedure;//添加存放过程参数,从全局Session变量获取学号,从CourseClassIDs得到选中课程班信息SelectCourseCmd.Parameters.Add("@StuID",SqlDbType.Char,8).Value=Session["StuID"].ToString();SelectCourseCmd.Parameters.Add("@CourseClassIDs",SqlDbType.VarChar,100).Value=CourseClassIDs;SelectCourseCmd.ExecuteNonQuery();//执行存放过程SelectCourseConn.Close();//关闭数据库连接Response.Write("<SCRIPTlanguage='javascript'>alert('课程选修成功!');</SCRIPT>");Response.Redirect("ReturnCourse.aspx");}4/11/202523MicrosoftSQLServer2005第23页网页功效实当代码(ReturnCourse.aspx.cs)学生课程退选功效实现
1.已选课程班查询存放过程创建
2.已选课程班信息查询并绑定
3.学生课程退选功效实现
任务6-6课程选修和退选【任务实施与拓展】4/11/202524MicrosoftSQLServer2005第24页任务6-6课程选修和退选1、课程班信息查询存放过程创建【任务实施与拓展】一样在SQLServerSSMS中创建一个名为“SP_StuSelectedCourse”存放过程,基于某个学生查询其已经选修全部课程班信息。存放过程创建T-SQL语句以下:USEDB_TeachingMSGOCREATE
PROCEDURE
SP_StuSelectedCourse
@StuID
CHAR(8)ASSELECT
TSC.CourseClassID,CourseName,TeacherName,TeachingPlace,TeachingTimeFROM
TB_SelectCourse
TSC,TB_CourseClass
TCC,TB_Course
TC,TB_Teacher
TTWHERE
TSC.CourseClassID=TCC.CourseClassID
AND
TCC.CourseID=TC.CourseID
AND
TCC.TeacherID=TT.TeacherID
AND
StuID=@StuID4/11/202525MicrosoftSQLServer2005第25页任务5-5班级维护功效实现2、已选课程班信息查询并绑定
【任务实施与拓展】为在此网页中显示某个登录学生已经选修课程班信息,在“ReturnCourse.aspx.cs”文件中添加一个方法“GridViewDataBind()”,代码以下:private
voidGridViewDataBind(){//建立数据库连接,从Web.config文件获取数据库连接字符串SqlConnectionStuCourseConn=new
SqlConnection();StuCourseConn.ConnectionString=ConfigurationManager.ConnectionStrings["ConnStr"].ToString();StuCourseConn.Open();//调用存放过程SqlCommandStuCourseCmd=new
SqlCommand("SP_StuSelectedCourse",StuCourseConn);4/11/202526MicrosoftSQLServer2005第26页任务5-5班级维护功效实现【任务实施与拓展】//说明SqlCommand类型是个存放过程StuCourseCmd.CommandType=CommandType.StoredProcedure;//添加存放过程参数,从全局Session变量获取学号值StuCourseCmd.Parameters.Add("@StuID",SqlDbType.Char,8).Value=Session["StuID"].ToString();SqlDataAdapterStuGradeAdapter=new
SqlDataAdapter(StuCourseCmd);//将SqlDataAdapter对象中数据填充到DataSet对象表"StuCourseTable"中DataSetStuCourseDS=new
DataSet();StuGradeAdapter.Fill(StuCourseDS,"StuCourseTable");//关闭数据库连接StuCourseConn.Close();//绑定数据到GridView显示this.StuCourseGView.DataSource=StuCourseDS.Tables["StuCourseTable"];this.StuCourseGView.DataBind();}4/11/202527MicrosoftSQLServer2005第27页任务5-5班级维护功效实现【任务实施与拓展】同时,在“ReturnCourse.aspx.cs”文件方法“Page_Load()”中添加以下代码://假如是第一次加载网页,则绑定页面上各个下拉框数据if(!Page.IsPostBack){GridViewDataBind();}4/11/202528MicrosoftSQLServer2005第28页任务5-5班级维护功效实现3、学生课程退选功效实现
【任务实施与拓展】为了实现当学生在网页上单击了对应要删除课程班行【退选】链接后,删除对应已选课程班。在“ReturnCourse.aspx”文件【设计】页面中选中“GridView”组件,在【属性】窗口中单击事件按钮【】,在【RowDeleting】事件右边空白处双击,即可在方法“StuCourseGView_RowDeleting()”中输入下述代码。protected
voidStuCourseGView_RowDeleting(objectsender,GridViewDeleteEventArgse){//定义字符串变量“StuID、CourseClassID”,并获取对应值stringStuID=Session["StuID"].ToString();stringCourseClassID=this.StuCourseGView.Rows[e.RowIndex].Cells[0].Text.ToString();//Response.Write(CourseClassID);4/11/202529MicrosoftSQLServer2005第29页任务5-5班级维护功效实现【任务实施与拓展】SqlConnectionDeleteConn=new
SqlConnection();DeleteConn.ConnectionString=ConfigurationManager.ConnectionStrings["ConnStr"].ToString();DeleteConn.Open();SqlCommandDeleteCmd=new
SqlCommand("DELETEFROMTB_SelectCourseWHEREStuID='"+StuID+"'"+"ANDCourseClassID='"+CourseClassID+"'",DeleteConn);DeleteCmd.ExecuteNonQuery();DeleteConn.Close();Response.Write("<scriptlanguage='javascript'>alert('课程退选成功');</script>");GridViewDataBind();}4/11/202530MicrosoftSQLServer2005第30页任务5-5班级维护功效实现【任务实施与拓展】一样,为了在退选课程班统计前先弹出一个“真要删除吗?”确实认对话框,能够在图中【选定字段】栏中选择【退选】字段,然后单击窗口右下面链接【将此字段转换为TemplateField】。然后在“<asp:LinkButtonID="LinkButton1"Text="退选"></asp:LinkButton>”处“Text="退选"”后添加“OnClientClick="javascript:returnconfirm('真要退选吗?');"”代码。4/11/202531MicrosoftSQLServer2005第31页【任务拓展】登录验
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025短租租赁合同:教育培训场地租赁协议
- 2025年典当合同范本:汽车典当贷款操作细则
- 2025年轨道交通信号电缆项目采购合同
- 2025店长聘用协议:商业地产店长岗位竞聘标准
- 2025年度水利工程水泵安装与防冻合同
- 2025年康复医疗服务体系优化与运营模式创新策略研究报告
- 2025年度图书馆图书采购与读者服务合同
- 2025版企业办公设备维修与保养服务合同
- 2025年新能源汽车专用停车位买卖合同
- 2025版闲置土地居间服务合同
- 电力系统调度运行继电人员继电保护竞赛试题及答案汇编
- 电力行业防汛应急预案演练脚本(2篇)
- 2025 耳鼻喉科鼻息肉术后换药查房操作课件
- 航空航天检测技术
- 初级魔方社团课件
- 储油储气项目社会稳定风险评估报告
- 《RWA 技术规范》标准草案
- 庭院围墙整治方案(3篇)
- 2025年高考物理真题完全解读(广西卷)
- 教师课件的制作培训
- 质量成本控制与管理考核试卷
评论
0/150
提交评论