ファイルを圧縮してユーザーのマシンにダウンロードする機能があります。
ただし、ファイルを圧縮すると、ファイルはいくつかのフォルダー内にあります。
たとえば、test.doc というファイルを圧縮したい場合、それは c:/document/the folder/test.doc にあります。
圧縮されたフォルダーには、「ドキュメント」フォルダーと「フォルダー」もあります。そこに書類が欲しいだけ
これが私のコードです...
public FileStreamResult DownloadDocs()
{
MemoryStream workStream = new MemoryStream();
ZipFile zip = new ZipFile();
string[] fileEntries = Directory.GetFiles(Server.MapPath(SettingManager.OnlineForms));
foreach (string fileName in fileEntries)
{
FileInfo fi = new FileInfo(fileName);
string name = Server.MapPath(SettingManager.OnlineForms + fi.Name);
zip.AddFile(name);
}
zip.Save(workStream);
workStream.Position = 0;
FileStreamResult fileResult = new FileStreamResult(workStream, System.Net.Mime.MediaTypeNames.Application.Zip);
fileResult.FileDownloadName = "OnlineForms.zip";
return fileResult;
}