public async Task <BlogToReturnDto> GetBlogPost(int id) { var spec = new BlogWithSpecificationTypes(id); var blogPost = await _blogRepository.GetEntityWithSpec(spec); return(_mapper.Map <BlogEntity, BlogToReturnDto>(blogPost)); }
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))); }