Download Archive Files in Zip
unknown
csharp
4 years ago
1.8 kB
5
Indexable
public ActionResult DownloadMemberRegistrationArchivedCsvFiles() { try { string achiveFolderPath = Sitecore.IO.FileUtil.MapPath("~/App_Data/logs/Custom/Archieved/"); DirectoryInfo directory = new DirectoryInfo(achiveFolderPath); if (directory.Exists) { string zipPath = $"{achiveFolderPath}member_registration_logs_{DateTime.Now.ToString("yyyyMMddHHmmssfff")}.zip"; var files = directory.GetFiles()?.Select(x => new MemberRegistraionFileModel() { FileName = x.Name, FilePath = x.FullName }); if (files != null && files.Any()) { using (var memoryStream = new MemoryStream()) { using (ZipArchive archive = new ZipArchive(memoryStream, ZipArchiveMode.Create, false)) { foreach (var file in files) { archive.CreateEntryFromFile(file.FilePath, file.FileName); } } return File(memoryStream.ToArray(), "application/zip", $"member_registration_logs_{DateTime.Now.ToString("yyyyMMddHHmmssfff")}.zip"); } } } } catch (Exception ex) { Sitecore.Diagnostics.Log.Error("Error occur while creating member registrion zip archive", ex, typeof(ImporterController)); } return null; }
Editor is loading...