public async Task <ActionResult> GetCourse(int id) { try { var course = await _coursesRepository.GetCourseAsync(id); if (course == null) { return(NotFound()); } return(Ok(course)); } catch (Exception exp) { _Logger.LogError(exp.Message); return(NotFound()); } }
public async Task <Result> SignUpAsync(Guid courseId, User user) { var course = await _coursesRepository.GetCourseAsync(courseId); var emptyPlace = course.FindEmptyPlace(); //can be used Maybe<> wrapper to add readablity if (emptyPlace == null) { return(Result.FailedResult); } emptyPlace.BookPlaceForUser(user); await _coursesRepository.SaveChangesAsync(course); return(Result.SuccessResult); }