Example #1
0
        public async Task <JsonResult> UploadAndSearchByBibFile(IFormFile file)
        {
            string fileContent;

            using (var streamReader = new StreamReader(file.OpenReadStream()))
                fileContent = await streamReader.ReadToEndAsync();

            IEnumerable <string> titles = await _bibFileProcessor.GetTitlesAsync(fileContent);

            IEnumerable <Task <DocumentSearchResults.Article> > tasks = titles.Select(t => _documentSearchProcessor.GetByNameExactAsync(t));
            List <DocumentSearchResults.Article> results = (await Task.WhenAll(tasks)).Where(r => r != null).ToList();

            return(Json(results));
        }