Esempio n. 1
0
        public async Task <QueryResult <PostDTO> > GetAdminViewModels(PostQueryDTO queryViewModel)
        {
            queryViewModel.NotNull();

            var query  = mapper.Map <PostQueryDTO, PostQuery>(queryViewModel);
            var result = await postRepository.GetQueryResultAsync(query, (Post p) => new PostDTO()
            {
                Id       = p.Id,
                Title    = p.Title,
                Category = new CategoryDTO()
                {
                    Name = p.Category.Name
                },
                DateCreated = p.DateCreated,
            });

            var tags = await postRepository.GetTagsAsync(result.Items.Select(p => p.Id), tagExp);

            foreach (var p in result.Items)
            {
                p.Tags = tags.Where(t => t.Id == p.Id).Take(6).Select(t => t.Object).ToList();
            }

            return(result);
        }
 public async Task <QueryResult <PostDTO> > GetAdminQuery(PostQueryDTO query)
 {
     return(await postService.GetAdminViewModels(query));
 }