protected void btnAddCourse_Click(object sender, EventArgs e) { if (!Page.IsValid) { return; } List <Course> courses = (List <Course>)Session["courses"]; using (StudentRecordEntities entities = new StudentRecordEntities()) { Course course = new Course(); course.Code = txtCourseNumber.Text; course.Title = txtCourseName.Text; entities.Courses.Add(course); entities.SaveChanges(); //courses.Add(course); // add new course to the session, use insert to display the course at top courses.Insert(0, course); } Session["courses"] = courses; DisplayCourseTable(courses); }
protected void Page_Load(object sender, EventArgs e) { LinkButton btnHome = (LinkButton)Master.FindControl("btnHome"); BulletedList btnTopMenu = (BulletedList)Master.FindControl("topMenu"); //bool sortCodeDesc = false; //bool sortTitleDesc = false; btnHome.Click += (s, a) => Response.Redirect("Default.aspx"); btnTopMenu.Click += (s, a) => Response.Redirect("AddStudent.aspx"); if (!IsPostBack) { btnTopMenu.Items.Add(new ListItem("Add Student Records")); if (Session["courses"] == null) { // create a courses session to save and display the initial data list from database using (StudentRecordEntities entities = new StudentRecordEntities()) { List <Course> courses = entities.Courses.ToList <Course>(); Session["courses"] = courses; DisplayCourseTable(courses); } } else { // retrieve the courses list form session List <Course> courses = (List <Course>)Session["courses"]; string sort = Request.Params["sort"]; if (!string.IsNullOrEmpty(sort)) { SortCourses(courses, sort); } DisplayCourseTable(courses); } //if (Session["sortCode"] == null) //{ // Session["sortCode"] = sortCodeDesc; //} //else //{ // sortCodeDesc = (bool)Session["sortCode"]; //} //if (Session["sortTitle"] == null) //{ // Session["sortTitle"] = sortTitleDesc; //} //else //{ // sortTitleDesc = (bool)Session["sortTitle"]; //} } }
protected void Page_Load(object sender, EventArgs e) { LinkButton btnHome = (LinkButton)Master.FindControl("btnHome"); BulletedList btnTopMenu = (BulletedList)Master.FindControl("topMenu"); btnHome.Click += (s, a) => Response.Redirect("Default.aspx"); btnTopMenu.Click += (s, a) => Response.Redirect("AddCourses.aspx"); if (!IsPostBack) { btnTopMenu.Items.Add(new ListItem("Add Courses")); using (StudentRecordEntities entities = new StudentRecordEntities()) { List <Course> courses = entities.Courses.ToList <Course>(); if (Session["courses"] == null) { Session["courses"] = courses; } foreach (Course course in courses) { drpCourseSelection.Items.Add(new ListItem(course.Code + " - " + course.Title, course.Code)); } displayStudentRecordTable(null); } } }
protected void btnAddStudentRecord_Click(object sender, EventArgs e) { if (!Page.IsValid) { return; } List <Course> courses = (List <Course>)Session["courses"]; Course selectedCourse = courses.Find(c => c.Code == drpCourseSelection.SelectedValue); using (StudentRecordEntities entities = new StudentRecordEntities()) { Student student = (from s in entities.Students where s.Id == txtStudentNumber.Text select s).FirstOrDefault <Student>(); if (student == null) { student = new Student(); student.Id = txtStudentNumber.Text; student.Name = txtStudentName.Text; entities.Students.Add(student); entities.SaveChanges(); } AcademicRecord academicRecord = new AcademicRecord(); academicRecord.CourseCode = drpCourseSelection.SelectedValue; //academicRecord.StudentId = txtStudentNumber.Text; academicRecord.Grade = int.Parse(txtGrade.Text); //academicRecord.Course = selectedCourse; academicRecord.Student = student; Course course = (from c in entities.Courses where c.Code == selectedCourse.Code select c).FirstOrDefault <Course>(); course.AcademicRecords.Add(academicRecord); entities.SaveChanges(); } displayStudentRecordTable(selectedCourse); }
protected void CourseCodeDBValidate(object source, ServerValidateEventArgs args) { // validate if the course ID is existed in database List <Course> courses = (List <Course>)Session["courses"]; using (StudentRecordEntities entities = new StudentRecordEntities()) { Course course = (from c in entities.Courses where c.Code == txtCourseNumber.Text select c).FirstOrDefault <Course>(); if (course != null) { args.IsValid = false; } else { args.IsValid = true; } } DisplayCourseTable(courses); }
protected void StudentIdDBValidate(object source, ServerValidateEventArgs args) { // validate if the student record is existed the selected course in database List <Course> courses = (List <Course>)Session["courses"]; Course selectedCourse = courses.Find(c => c.Code == drpCourseSelection.SelectedValue); using (StudentRecordEntities entities = new StudentRecordEntities()) { AcademicRecord academicRecord = (from r in entities.AcademicRecords where r.StudentId == txtStudentNumber.Text && r.CourseCode == selectedCourse.Code select r).FirstOrDefault <AcademicRecord>(); if (academicRecord != null) { args.IsValid = false; } else { args.IsValid = true; } } displayStudentRecordTable(selectedCourse); }
public void displayStudentRecordTable(Course course) { if (drpCourseSelection.SelectedValue == "-1" || course == null) { //create the empty table Label NoData = new Label(); TableRow row = new TableRow(); TableCell cell = new TableCell(); NoData.CssClass = "text-muted"; NoData.Text = "No Student Records"; cell.Controls.Add(NoData); cell.ColumnSpan = 3; row.HorizontalAlign = HorizontalAlign.Center; row.Cells.Add(cell); tblStudentRecords.Rows.Add(row); } else { using (StudentRecordEntities entities = new StudentRecordEntities()) { List <AcademicRecord> allAcademicRecords = entities.AcademicRecords.ToList <AcademicRecord>(); List <AcademicRecord> academicRecords = allAcademicRecords.FindAll(r => r.CourseCode == course.Code); if (academicRecords.Count == 0) { //create the empty table Label NoData = new Label(); TableRow row = new TableRow(); TableCell cell = new TableCell(); NoData.CssClass = "text-muted"; NoData.Text = "No Student Records"; cell.Controls.Add(NoData); cell.ColumnSpan = 3; row.HorizontalAlign = HorizontalAlign.Center; row.Cells.Add(cell); tblStudentRecords.Rows.Add(row); } else { // clear rest table for (int i = tblStudentRecords.Rows.Count - 1; i > 0; i--) { tblStudentRecords.Rows.RemoveAt(i); } // sort student records by name, lastname then firstname academicRecords.Sort((x, y) => { var lhs = x.Student.Name.Split(' '); var rhs = y.Student.Name.Split(' '); var ret = lhs.LastOrDefault().CompareTo(rhs.LastOrDefault()); return(ret != 0 ? lhs.LastOrDefault().CompareTo(rhs.LastOrDefault()) : lhs.FirstOrDefault().CompareTo(rhs.FirstOrDefault())); }); foreach (AcademicRecord record in academicRecords) { TableRow row = new TableRow(); tblStudentRecords.Rows.Add(row); for (int j = 0; j < 3; j++) { TableCell cell = new TableCell(); if (j == 0) { cell.Text = record.Student.Id; } if (j == 1) { cell.Text = record.Student.Name; } if (j == 2) { cell.Text = record.Grade.ToString(); } row.Cells.Add(cell); } } } } } }