public async Task <IHttpActionResult> Update([FromBody, CustomizeValidator(RuleSet = "UpdateCourse")] CourseViewInput course) { if (course == null || !Enum.IsDefined(typeof(CourseLevel), course.Level)) { return(BadRequest()); } var courseInfo = _mapper.Map <CourseViewInput, CourseInfo>(course); var result = await _courseService.UpdateAsync(courseInfo); return(result.IsError ? BadRequest(result.Message) : (IHttpActionResult)Ok(result.Data)); }
[Authorize] //comment when use swagger. public async Task <IHttpActionResult> Create([FromBody] CourseViewInput course) { var user = this.User as ClaimsPrincipal; string authorName = string.Empty; if (User.Identity.IsAuthenticated) { var sub = (User as ClaimsPrincipal).FindFirst("sub"); authorName = sub.Value; } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var courseInfo = _mapper.Map <CourseViewInput, CourseInfo>(course); var result = await _courseService.AddCourseAsync(courseInfo); return(result.IsError ? BadRequest(result.Message) : (IHttpActionResult)Ok(result.Data)); }