public ActionResult EditStudents(int id, AdminControllerStudentVM studentModel) { TryUpdateModel(studentModel); if (studentModel.CourseListItems == null) { CourseRepository courseRepository = new CourseRepository(); List<SelectListItem> List = new List<SelectListItem>(); studentModel.CourseList = courseRepository.GetAll(); foreach (var item in studentModel.CourseList) { List.Add(new SelectListItem() { Text = item.Name, Value = item.Id.ToString() }); } studentModel.CourseListItems = List; } if (ModelState.IsValid) { StudentRepository studentRepository = new StudentRepository(); Student student = null; if (id > 0) { student = studentRepository.GetById(id); if (student.Course.Id != studentModel.CourseID) { CourseRepository courseRepository = new CourseRepository(); int newCode = courseRepository.GetById(studentModel.CourseID).Code; int oldCode = courseRepository.GetById(student.Course.Id).Code; StringBuilder sb = new StringBuilder(); sb.Append(student.FacultyNumber.ToString()); sb.Replace(oldCode.ToString(), newCode.ToString()); student.FacultyNumber = Convert.ToInt32(sb.ToString()); } student.FirstName = studentModel.FirstName; student.LastName = studentModel.LastName; student.UserName = studentModel.UserName; student.Password = SecurityService.CreateHash(studentModel.Password); student.IsActive = studentModel.isActive; student.CourseID = studentModel.CourseID; studentRepository.Save(student); return RedirectToAction("ManageStudents"); } else { student = studentRepository.GetAll(filter: s => s.UserName == studentModel.UserName).FirstOrDefault(); if (student == null) { student = new Student(); student.FirstName = studentModel.FirstName; student.LastName = studentModel.LastName; student.UserName = studentModel.UserName; student.Password = studentModel.Password; student.IsActive = studentModel.isActive; student.FacultyNumber = GenerateFaculityNumber(studentModel.CourseID); student.CourseID = studentModel.CourseID; studentRepository.Save(student); } else { throw new ArgumentException("Invalid username !"); } return RedirectToAction("ManageStudents"); } } return View(studentModel); }
public ActionResult ManageStudents() { StudentRepository studentRepository = new StudentRepository(); AdminControllerStudentVM studentModel = new AdminControllerStudentVM(); studentModel.studentList = studentRepository.GetAll(); return View(studentModel); }
public ActionResult EditStudents(int id) { CourseRepository courseRepository = new CourseRepository(); StudentRepository studentRepository = new StudentRepository(); AdminControllerStudentVM studentModel = new AdminControllerStudentVM(); Student student = new Student(); List<SelectListItem> List = new List<SelectListItem>(); studentModel.CourseList = courseRepository.GetAll(); foreach (var item in studentModel.CourseList) { List.Add(new SelectListItem() { Text = item.Name, Value = item.Id.ToString() }); } if (id > 0) { student = studentRepository.GetById(id); List = List.Where(c => c.Text != student.Course.Name).ToList(); studentModel.FirstName = student.FirstName; studentModel.LastName = student.LastName; studentModel.UserName = student.UserName; studentModel.Password = student.Password; studentModel.FacultyNumber = student.FacultyNumber; studentModel.CourseID = student.CourseID; studentModel.isActive = student.IsActive; studentModel.SelectedCurse = student.Course.Name; studentModel.Id = id; } if (id == 0) { student.FirstName = studentModel.FirstName; student.LastName = studentModel.LastName; student.UserName = studentModel.UserName; student.Password = studentModel.Password; student.CourseID = studentModel.CourseID; } studentModel.CourseListItems = List; return View(studentModel); }