public async Task <IActionResult> SignupCourseV2(Guid courseId, [FromBody] SignupCourseRequest request) { try { if (!ModelState.IsValid) { return(StatusCode(StatusCodes.Status400BadRequest)); } var result = await MessagingClient.PublishMessage(new CourseSignupCommand(courseId, request)); return(Accepted()); } catch (Exception ex) { // To do - Handle exceptions, log it and throw appropriate errors return(StatusCode(StatusCodes.Status500InternalServerError, ex.Message)); } }
public async Task <IActionResult> SignupCourse(Guid courseId, [FromBody] SignupCourseRequest request) { try { if (!ModelState.IsValid) { return(StatusCode(StatusCodes.Status400BadRequest)); } var result = await CommandService.SignupCourse(new CourseSignupCommand(courseId, request)); return(Ok(new SignupCourseResponse { Success = true })); } catch (Exception ex) { // To do - Handle exceptions, log it and throw appropriate errors return(StatusCode(StatusCodes.Status500InternalServerError, ex.Message)); } }
public CourseSignupCommand(Guid courseId, SignupCourseRequest input) { CourseId = courseId; InputData = input; }