public IActionResult GoToFile(int fileId) { if (fileId == 0) { return(RedirectToAction(nameof(Index))); } var doc = _documentService.GetDocumentById(fileId); if (doc == null) { return(RedirectToAction(nameof(Index))); } // Transform json into an object var classificationObjResult = JsonConvert.DeserializeObject <ClassificationDto[]>(doc.Classification)[0]; // Create Dto Response for View var dto = new DocumentSummaryData() { Id = doc.Id, Summary = doc.Summary, Title = doc.Title, Classification = classificationObjResult.Classification .OrderByDescending(c => c.P) .Select(t => string.Format(t.ClassName + ": " + "{0:0.0%}", t.P)) .ToArray() }; return(View("DocumentSummary", dto)); }
public IActionResult DocumentSummary() { var dto = new DocumentSummaryData() { Id = 0, Summary = "No result.", Title = "", Classification = new string[] { } }; return(View(dto)); }
public IActionResult Index(List <IFormFile> files) { // Get file if (files.Count == 0) { return(View(PrepareDocumentsList())); } var formFile = files[0]; // Get size long size = files.Sum(f => f.Length); // Get filepath and extension var filePath = System.IO.Path.GetTempFileName(); var ext = System.IO.Path.GetExtension(formFile.FileName).ToLower(); // Check extension if (ext.Equals(".txt") || ext.Equals(".pdf") || ext.Equals(".doc") || ext.Equals(".docx")) { if (formFile.Length > 0) { // Read from file using (var stream = new MemoryStream()) { //Prepare file to Db formFile.CopyTo(stream); Entities.UserForm.Document entity = new Entities.UserForm.Document() { Title = formFile.FileName, Stream = stream.ToArray(), ContentType = formFile.ContentType, Size = size, CreatedOnUtc = DateTime.Now }; // Read text from file string fullText = ReadText(ext, entity.Stream, formFile.ContentType); // Summarize text string textSummary = SummarizeText(fullText); // Get summary classification string classification = GetClassification(textSummary); // Save file to db entity.Summary = textSummary; entity.Classification = classification; _documentService.Create(entity); // Transform json into an object var classificationObjResult = JsonConvert.DeserializeObject <ClassificationDto[]>(classification)[0]; // Create Dto Response for View var dto = new DocumentSummaryData() { Id = entity.Id, Summary = textSummary, Title = entity.Title, Classification = classificationObjResult.Classification .OrderByDescending(c => c.P) .Select(t => string.Format(t.ClassName + ": " + "{0:0.0%}", t.P)) .ToArray() }; return(View("DocumentSummary", dto)); } } } // Invalid extension, add model state error else { ModelState.AddModelError(string.Empty, "Extension not supported - (only *.txt, *.pdf, *.doc, *.docx)"); } // Return View return(View(PrepareDocumentsList())); }