public override async Task <FileInfo> GetFileInfo(string data) { var zipName = "ExportTables.csv"; var result = new FileInfo(); using (var session = DataService.OpenStatelessSession()) { var manufacturers = session.QueryOver <Manufacturer>().List().ToList(); var compressedFileStream = new MemoryStream(); //Create an archive and store the stream in memory. using (var zipArchive = new ZipArchive(compressedFileStream, ZipArchiveMode.Create, false)) { var manufacturersCsv = ExportToCsvUtility.CreateCSV <Manufacturer>(ref manufacturers); compressedFileStream.Write(manufacturersCsv, 0, manufacturersCsv.Length); } result.FileName = zipName; result.FileExtension = "zip"; result.Data = compressedFileStream.ToArray(); result.MimeType = "application/zip"; _fileName = result.GetFullFileName(); return(result); } }
public ExportToCSV(DataService dataService, ExportToCsvUtility exportToCsvUtility) { DataService = dataService; ExportToCsvUtility = exportToCsvUtility; }