示例#1
0
        public async Task <SearchResponse> Handle(SearchDocumentsByTagQuery request, CancellationToken cancellationToken)
        {
            var normalizedTag = request.Tag.ToLowerInvariant();
            var token         = await _tokens.FindByTagAsync(normalizedTag, cancellationToken);

            if (token == null)
            {
                return(new SearchResponse {
                    Documents = Array.Empty <Document>(), Tag = normalizedTag
                });
            }

            return(new SearchResponse
            {
                Documents = token.Indexes.Select(d => new Document {
                    Extension = d.Extension, FileName = d.Name
                }),
                Tag = normalizedTag
            });
        }