Example #1
0
        public IActionResult CreateClass([FromBody] TeacherCreationDto teacher)
        {
            Teachers t = Mapper.Map <Teachers>(teacher);

            teacherRepo.AddTeacher(t, User);

            teacherRepo.Save();

            return(CreatedAtRoute("GetTeacher", new { id = t.TeacherId }, t));
        }
Example #2
0
        public async Task <IActionResult> CreateTeacher(TeacherCreationDto teacherCreationDto)
        {
            if (ModelState.IsValid)
            {
                var newTeacher = new Teacher()
                {
                    AcademicDegree    = teacherCreationDto.AcademicDegree,
                    FieldOfStudy      = teacherCreationDto.FieldOfStudy,
                    YearsOfExperience = teacherCreationDto.YearsOfExperience,
                    BirthDate         = teacherCreationDto.BirthDate,
                    Email             = teacherCreationDto.Email,
                    FirstName         = teacherCreationDto.FirstName,
                    Gender            = teacherCreationDto.Gender,
                    LastName          = teacherCreationDto.LastName,
                    PhoneNumber       = teacherCreationDto.PhoneNumber,
                    UserName          = teacherCreationDto.UserName,
                    NationalCode      = teacherCreationDto.NationalCode,
                };

                IdentityResult createResult =
                    await _userManager.CreateAsync(newTeacher, teacherCreationDto.Password);

                if (createResult.Succeeded)
                {
                    return(RedirectToAction(nameof(Index)));
                }
                else
                {
                    foreach (var error in createResult.Errors)
                    {
                        ModelState.AddModelError(error.Code, error.Description);
                    }
                    return(View(teacherCreationDto));
                }

                return(RedirectToAction(nameof(Index)));
            }

            return(View(teacherCreationDto));
        }