加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 文件下载后更新页面

发布时间:2020-12-15 17:35:46 所属栏目:百科 来源:网络整理
导读:从另一天的堆栈溢出的一些奇妙的帮助之后,我将一个下载脚本放在一起.不过我现在发现文件下载完毕后,我需要重新加载该页面以摆脱aspx页面上的进度模板.删除模板的代码在我添加下载代码之前工作. 删除进度模板的代码:upFinanceMasterScreen.Update(); 我尝试
从另一天的堆栈溢出的一些奇妙的帮助之后,我将一个下载脚本放在一起.不过我现在发现文件下载完毕后,我需要重新加载该页面以摆脱aspx页面上的进度模板.删除模板的代码在我添加下载代码之前工作.

删除进度模板的代码:upFinanceMasterScreen.Update();

我尝试在将重定向到IHttpHandler之前和之后调用

Response.Redirect("Download.ashx?ReportName=" + "RequestingTPNLeagueTable.pdf");


public class Download : IHttpHandler {

public void ProcessRequest(HttpContext context)
{    

   StringBuilder sbSavePath = new StringBuilder();
   sbSavePath.Append(DateTime.Now.Day);
   sbSavePath.Append("-");
   sbSavePath.Append(DateTime.Now.Month);
   sbSavePath.Append("-");
   sbSavePath.Append(DateTime.Now.Year);

    HttpContext.Current.Response.ClearContent();
    HttpContext.Current.Response.ContentType = "application/pdf";
    HttpResponse objResponce = context.Response;
    String test = HttpContext.Current.Request.QueryString["ReportName"];
    HttpContext.Current.Response.AppendHeader("content-disposition","attachment; filename=" + test);
    objResponce.WriteFile(context.Server.MapPath(@"Reports" + sbSavePath + @"" + test));    

}
 public bool IsReusable { get { return true; } }

感谢您的任何帮助,您可以提供!

解决方法

当您发回用户要下载的文件时,即HTTP请求.换句话说,您可以拥有刷新浏览器页面的后端,也可以发送文件供用户下载.如果没有特别的技巧,你也不可能做到这一点.

这就是为什么大多数网站下载文件时,首先需要一个新的页面,说明“您的下载即将开始”,然后随后“重定向”您使用元刷新或javascript下载文件.

例如,当您去这里下载.NET 4运行时:

http://www.microsoft.com/downloads/en/confirmation.aspx?FamilyID=0a391abd-25c1-4fc0-919f-b21f31ab88b7&displaylang=en&pf=true

它呈现该页面,然后使用以下元刷新标签来实际向用户提供要下载的文件:

<META HTTP-EQUIV="refresh" content=".1; URL=http://download.microsoft.com/download/9/5/A/95A9616B-7A37-4AF6-BC36-D6EA96C8DAAE/dotNetFx40_Full_x86_x64.exe" />

你可能需要在你的应用程序中做类似的事情.但是,如果您真的有兴趣在文件完全下载后执行某些操作,那么您的运气不佳,因为没有任何事件可以与浏览器进行通信.执行此操作的唯一方法是上传附件时使用的AJAX upload.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读