私がやっていることは、zipファイルを作成し、それらのファイルをダウンロードすることです。 は、ここでまた、サービス層が、私はZIPファイルに作成されていないこれらのファイルのダウンロードアクションをクリックしている間、私が直面しています問題がある。このZIPファイルのダウンロード
public string DownloadBackupFile(string Name)
{
string backupFolder = HttpContext.Current.Server.MapPath("~/DbBackup");
string filePath = backupFolder + "\\" + Name;
string zipFilePath = filePath.Substring(0, (filePath.Length - 3)) + "zip";
var backupFileName = Path.GetFileNameWithoutExtension(filePath);
var zipFileName = Path.GetFileName(zipFilePath);
if (File.Exists(zipFilePath))
{
}
else
{
ZipArchive zip = ZipFile.Open(zipFilePath, ZipArchiveMode.Create);
zip.CreateEntryFromFile(filePath, Name);
}
return zipFilePath;
}
のように見える私のコントローラ
public FilePathResult Download(string Name)
{
string f1=null;
try
{
f1 = _dbBackupServiceService.DownloadBackupFile(Name);
}
catch (Exception ex)
{
}
return File(f1, "application/zip", Name + ".zip");
}
です。ダウンロードスレッドが実行され、ブラウザがエラーを表示すると、プロセッサはzipファイルを継続的に作成します。すでに作成されているzipファイルは正常にダウンロードされます。ダウンロードが行われる前にzipファイルが正常に作成されるまで待つことはできますか?
通常、多くの時間がかかりますが、ユーザーに知らせて、後でそのメールにジップが完了していることを知らせてください。ここにダウンロード用のリンクがあります... – Aristos