public async Task <string> DownloadReport(string fileExtension) { var reportData = await _reportBuilder.GetReportData(); var dataSerialized = _serializer.Serialize(reportData); var fileSaved = await _fileSaver.SaveToFile(_filePath, fileExtension, dataSerialized); return(fileSaved); }
public async Task <(string fileType, MemoryStream fileData, string fileName)> GetFile(string filePath, string fileExtension) { var model = await _reportBuilder.GetReportData(); var serializedData = _serializer.Serialize(model); var fileName = await _fileSaver.SaveToFile(filePath, fileExtension, serializedData); var fullName = $"{filePath}\\{fileName}"; var memory = new MemoryStream(); await using (var stream = new FileStream(fullName, FileMode.Open)) { await stream.CopyToAsync(memory); } memory.Position = 0; return("application/json", memory, fileName); }
public async Task <IActionResult> Index() { var model = await _reportBuilder.GetReportData(); return(View(model)); }