示例#1
0
        public async Task <IActionResult> GetCoursesectionsForCourse(Guid courseId, [FromQuery] CourseSectionMgtParameters courseSectionMgtParameters)
        {
            var course = await _repository.CourseMgt.GetCourseAsync(courseId, trackChanges : false);

            if (course == null)
            {
                _logger.LogInfo($"Course with id: {courseId} doesn't exist in the database.");
                return(NotFound());
            }

            var coursesectionsFromDb = await _repository.CourseSectionMgt.GetCoursesectionsAsync(courseId, courseSectionMgtParameters, trackChanges : false);

            Response.Headers.Add("X-Pagination", JsonConvert.SerializeObject(coursesectionsFromDb.MetaData));

            var coursesectionsDto = _mapper.Map <IEnumerable <CourseSectionDto> >(coursesectionsFromDb);

            return(Ok(coursesectionsDto));
        }
示例#2
0
        public async Task <PagedList <CourseSectionMgt> > GetCoursesectionsAsync(Guid courseId, CourseSectionMgtParameters courseSectionMgtParameters, bool trackChanges)
        {
            var courseSectionMgts = await FindByCondition(e => e.CourseId.Equals(courseId), trackChanges)
                                    .OrderBy(e => e.Id)
                                    .ToListAsync();

            return(PagedList <CourseSectionMgt> .ToPagedList(courseSectionMgts, courseSectionMgtParameters.PageNumber, courseSectionMgtParameters.PageSize));
        }