public async Task <IActionResult> GetCommentsAsync( [FromQuery] PagingOptions pagingOptions, CancellationToken ct) { pagingOptions.Offset = pagingOptions.Offset ?? _defaultPagingOptions.Offset; pagingOptions.Limit = pagingOptions.Limit ?? _defaultPagingOptions.Limit; var conversations = await _commentService.GetCommentsAsync(null, pagingOptions, ct); var collection = CollectionWithPaging <CommentResource> .Create( Link.ToCollection(nameof(GetCommentsAsync)), conversations.Items.ToArray(), conversations.TotalSize, pagingOptions); return(Ok(collection)); }
public async Task <IActionResult> GetConversationCommentsByIdAsync( GetConversationByIdParameters parameters, [FromQuery] PagingOptions pagingOptions, CancellationToken ct) { pagingOptions.Offset = pagingOptions?.Offset ?? _defaultPagingOptions.Offset; pagingOptions.Limit = pagingOptions?.Limit ?? _defaultPagingOptions.Limit; var conversationComments = await _commentService.GetCommentsAsync(parameters.ConversationId, pagingOptions, ct); var collection = CollectionWithPaging <CommentResource> .Create( Link.ToCollection( nameof(GetConversationCommentsByIdAsync), new GetConversationByIdParameters { ConversationId = parameters.ConversationId }), conversationComments.Items.ToArray(), conversationComments.TotalSize, pagingOptions); return(Ok(collection)); }