public IQueryable <ProgramCoursesDto> GetProgramCourses(GetProgramCoursesRequest request) { return(_schoolContext.ProgramsCourses.Where(x => x.ProgramId == request.ProgramId && x.Course.Semester == request.Semester) .Select(x => new ProgramCoursesDto { Course = x.Course, IsMandatory = x.IsMandatory, Prerequisites = _schoolContext.CoursesPrerequisites .Where(y => y.Course.CourseId == x.Course.CourseId) .Select(z => z.Prerequisite).ToList() })); }
public IHttpActionResult GetProgramCourses(int id, int semester) { var request = new GetProgramCoursesRequest { ProgramId = id, Semester = semester }; var response = _manager.GetProgramCourses(request); if (!response.IsSuccessful) { return(BadRequest(response.ToString())); } return(Ok(response)); }
public GetProgramCoursesResponse GetProgramCourses(GetProgramCoursesRequest request) { var response = new GetProgramCoursesRequestValidator().Validate(request).ToResponse <GetProgramCoursesResponse>(); if (!response.IsSuccessful) { return(response); } try { response.ProgramsCoursesDto = _programsRepository.GetProgramCourses(request).ToList(); } catch (Exception ex) { response.IsSuccessful = false; response.Errors.Add("An error has occurred while getting program courses!"); _logger.LogException(ex); } return(response); }