利用 ASP.Net状态保存机制记录网页内部参数值
问题:在专业课程表中实现更新功能时,专业ID不变,根据专业ID和课程ID来更新课程ID,此时,必须保存更新页面之前的课程ID的值
解决:
根据ASP.Net状态保存机制
采用视图机制
在DT中新增precid字段,用于记录更新前的课程ID值,
当从SpecialtyCourseList.aspx中点击编辑到更新页面时,传递了课程ID,此时在NewSpecialtyCourse.aspx中使用视图保存次课程ID
this.dropCourse.SelectedValue = dt.CourseID.ToString();
ViewState["cid"] = dt.CourseID;
在更新操作中,获取次课程ID
//使用视图保存原始的课程id,实现根据原始的专业和课程的ID来更新
int cid = (int)ViewState["cid"];
dt.PreCid = cid;
相应的在Updata()方法中使用dt.precid获取这个值。
使用断点调试,可以发现,这个值和courseid是不同的,后者是更新后的courseid。