public async Task <ActionResult> Edit(int id) { var student = await _studentRepository.GetStudent(id); if (student != null) { StudentForCreateDto studentForCreateDto = new StudentForCreateDto { BirthDate = student.BirthDate, FieldName = student.Field.Name, SelectedFieldId = student.Field.ID, StudentName = student.Name, StudentId = id, GovernateName = student.Governorate.Name, SelectedGovernateId = student.Governorate.ID, NeighbourhoodName = student.Neighborhood.Name, SelectedNeigbhourhoodId = student.Neighborhood.ID, Fields = await _fieldRepository.GetFields(), Neighborhoods = await _neighborhoodRepository.GetNeighborhoods(), Governorates = await _governateRepostiory.GetGovernorates(), Teachers = await _teacherReposiotry.GetTeachers(), StudentTeachers = _studentRepository.GetStudentTeachers(id), }; ViewBag.Teachers = new MultiSelectList(studentForCreateDto.Teachers, "ID", "Name"); return(View(studentForCreateDto)); } return(View()); }
public void CreateStudent(StudentForCreateDto studentForCreateDto) { if (studentForCreateDto != null) { var selectedTeachers = _context.Teachers .Where(teacher => studentForCreateDto.TeachersIndex. Any(id => studentForCreateDto.TeachersIndex.Contains(teacher.ID))).ToList(); var st = selectedTeachers.Select(t => new StudentTeacher { TeacherId = t.ID, Teacher = t }); var student = new Student { BirthDate = studentForCreateDto.BirthDate, FieldId = studentForCreateDto.SelectedFieldId, GovernorateId = studentForCreateDto.SelectedGovernateId, NeighborhoodId = studentForCreateDto.SelectedNeigbhourhoodId, Name = studentForCreateDto.StudentName, StudentTeachers = st.ToList() }; _context.Students.Add(student); _context.SaveChanges(); } }
public async Task <ActionResult> Create() { StudentForCreateDto studentForCreateDto = new StudentForCreateDto(); studentForCreateDto.Fields = await _fieldRepository.GetFields(); studentForCreateDto.Governorates = await _governateRepostiory.GetGovernorates(); studentForCreateDto.Neighborhoods = await _neighborhoodRepository.GetNeighborhoods(); studentForCreateDto.Teachers = await _teacherReposiotry.GetTeachers(); ViewBag.Teachers = new MultiSelectList(studentForCreateDto.Teachers, "ID", "Name"); return(View(studentForCreateDto)); }
public ActionResult Edit(StudentForCreateDto studentForCreateDto) { if (ModelState.IsValid) { var selectedTeachers = _context.Teachers .Where(teacher => studentForCreateDto.TeachersIndex. Any(id => studentForCreateDto.TeachersIndex.Contains(teacher.ID))).ToList(); var st = selectedTeachers.Select(t => new StudentTeacher { TeacherId = t.ID, Teacher = t, StudentId = studentForCreateDto.StudentId, Student = _context.Students.Find(studentForCreateDto.StudentId) }); var studentt = new Student { BirthDate = studentForCreateDto.BirthDate, Name = studentForCreateDto.StudentName, FieldId = studentForCreateDto.SelectedFieldId, GovernorateId = studentForCreateDto.SelectedGovernateId, NeighborhoodId = studentForCreateDto.SelectedNeigbhourhoodId, StudentTeachers = st.ToList(), ID = studentForCreateDto.StudentId }; List <StudentTeacher> ss = new List <StudentTeacher> { new StudentTeacher { StudentId = studentt.ID, TeacherId = 0 } }; var student = _context.Students.Find(studentt.ID); student.Name = studentt.Name; student.BirthDate = studentt.BirthDate; student.FieldId = studentt.FieldId; student.GovernorateId = studentt.GovernorateId; student.NeighborhoodId = studentt.NeighborhoodId; student.StudentTeachers = st.ToList(); _context.SaveChanges(); return(RedirectToAction("Index")); } return(View()); }
public ActionResult Create(StudentForCreateDto studentForCreateDto) { _studentRepository.CreateStudent(studentForCreateDto); return(RedirectToAction("Index")); }