gpt4 book ai didi

c#,asp.net,压缩文件需要很长时间并且浏览器变得无响应

转载 作者:太空宇宙 更新时间:2023-11-03 22:16:39 24 4
gpt4 key购买 nike

我的网站上有图片,用户可以在其中下载选定的图片。当用户选择多个图像时,文件将下载为 zip 文件;压缩过程发生在服务器上。

但是,当用户选择更多文件时(大小也增加了 500MB),所以当他按下下载时,服务器上开始压缩。网页挂起,在压缩过程完成之前用户无法执行任何操作。

有时浏览器(如 Chrome)会给出消息(进程耗时太长,终止该进程)。所以我在这里寻求帮助。

我需要一个可靠的建议

谢谢

我的压缩文件代码是:

public string Zip(string f, bool original)
{

string zip = "";
try
{
files = HttpContext.Current.Server.UrlDecode(files);
string[] fileCollection = files.Split('*');
zipFile = class1.zipfile(fileCollection, IsOriginal);


int fileLength = files.Length;
}

catch (Exception ex)
{
Console.WriteLine("Exception during processing {0}", ex);


}
return File;

最佳答案

三个建议:

  1. 在客户端显示繁忙的屏幕让用户知道他是等待文件下载。你可以实现这一目标,即下载到单独的 iframe 和检查 iframe 的状态(动态方法见 Dynamically created iframe used to download file triggers onload with firebug but not without)
  2. 检查您实际压缩文件的方式 - 是否需要压缩或者您只想下载所有图片一起?没有 zipper 压缩通常要快得多。
  3. 如果仍然需要很长时间——甚至对于繁忙的屏幕 - 考虑使用异步方法:用户可以请求包含图像的 zip 文件他/她选择了,这导致系统开始处理 zip文件。然后用户可以等待或来返回专用页面进行检查zip 文件的状态,如果已准备就绪,立即下载从服务器(即从虚拟你把它放在后面的目录加工)。这种方法是多一点参与,你也有考虑清理。

关于c#,asp.net,压缩文件需要很长时间并且浏览器变得无响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4899060/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com