public Task <IReadOnlyList <CommentViewModel> > GetCommentsByUsernameAsync(string username) { var spec = new CommentSpecial(username, 1, 20); var comments = _commentRepository.SelectAsync(spec, c => _mapper.Map <CommentViewModel>(c), false); return(comments); }
public Task <int> CountByUsernameAsync(string username) { var spec = new CommentSpecial(username); var count = _commentRepository.CountAsync(spec); return(count); }
public Task <IReadOnlyList <PostCommentListItem> > GetSelectedOfPostAsync(Guid postId) { var spec = new CommentSpecial(postId); return(_commentRepository.SelectAsync(spec, c => new PostCommentListItem { Id = c.Id, CommentContent = c.CommentContent, CreateOnUtc = c.CreateOnUtc, Username = c.Username, CommentReplies = c.CommentReply.Select(cr => new CommentReplyItem { Id = cr.Id, ParentId = c.Id, ReplyContent = cr.ReplyContent, ReplyTimeUtc = cr.ReplyTimeUtc.GetValueOrDefault() }).ToList() })); }