public async Task <IEnumerable <WordInfo> > GetTopSearched(int limit)
        {
            _logger.LogInformation($"retrievig top {limit} searched words");

            var request = new GetTopRequests
            {
                Top = limit
            };

            var reply = await _wordServiceClient.GetTopWordsAsync(request);

            var response = reply.Results.Select(r => new WordInfo
            {
                Count = r.Count,
                Value = r.Value
            });

            return(response);
        }
Пример #2
0
        public override async Task <GetTopResponse> GetTopWords(GetTopRequests request, ServerCallContext context)
        {
            _logger.LogInformation("getting top searched words...");

            var query = new GetTopSearchedQuery
            {
                Limit = request.Top
            };

            var response = await _mediator.Send(query);

            var reply = new GetTopResponse();

            reply.Results.AddRange(response
                                   .Results
                                   .ToList()
                                   .Select(r => new WordInfo {
                Count = r.Count, Value = r.Word
            }));

            return(reply);
        }