Ejemplo n.º 1
0
        public async Task <IActionResult> Create(TeacherCourseCreateDto course)
        {
            var userId = userManager.GetUserId(User);

            if (ModelState.IsValid && !string.IsNullOrWhiteSpace(userId))
            {
                await teacherCourseService.CreateAsync(userId, course);

                return(RedirectToAction(nameof(Index)));
            }
            return(View(course));
        }
        // Create by Model
        public async Task <bool> CreateAsync(string userId, TeacherCourseCreateDto course)
        {
            if (course == null)
            {
                return(false);
            }

            // Get the course teacher
            var teacher = db.Teachers.Find(userId);

            if (teacher == null)
            {
                return(false);
            }

            // create the new course
            var newCourse = Mapper.Map <TeacherCourseCreateDto, Course>(course, opt => opt.ConfigureMap(MemberList.None));

            db.Courses.Add(newCourse);

            // add the teacher for the new course
            var teacherForCourse = new TeacherCourse {
                Teacher = teacher, Course = newCourse
            };

            db.TeacherCourses.Add(teacherForCourse);

            var result = await db.SaveChangesAsync();

            if (result <= 0)
            {
                return(false);
            }

            return(true);
        }