예제 #1
0
        public async Task <BlogToReturnDto> GetBlogPost(int id)
        {
            var spec = new BlogWithSpecificationTypes(id);

            var blogPost = await _blogRepository.GetEntityWithSpec(spec);

            return(_mapper.Map <BlogEntity, BlogToReturnDto>(blogPost));
        }
예제 #2
0
        public async Task <ActionResult <Paging <BlogToReturnDto> > > GetBlogPosts(
            [FromQuery] BlogSpecificationParameters blogSpecificationParameters)
        {
            var spec = new BlogWithSpecificationTypes(blogSpecificationParameters);

            var countSpec = new BlogWithSpecificationCount(blogSpecificationParameters);

            var totalPost = await _blogRepository.CountAsync(countSpec);

            var blogPosts = await _blogRepository.ListAsync(spec);

            var blogList = _mapper.Map <IReadOnlyList <BlogEntity>, IReadOnlyList <BlogToReturnDto> >(blogPosts);

            return(Ok(new Paging <BlogToReturnDto>(blogSpecificationParameters.PageIndex, blogSpecificationParameters.PageSize, totalPost, blogList)));
        }