ASP.NET元刷新强制下载

本文关键字:下载 刷新 NET ASP | 更新日期: 2023-09-27 18:21:45

我正在使用一个元刷新标记来指向要从服务器下载的文件。我如何使它下载所有文件,而不是在浏览器中打开它们。我在代码后面添加元标签,如下所示:

String filename = filenode.Element("name").Value.ToString();
HtmlMeta redirectMetaTag = new HtmlMeta();
redirectMetaTag.HttpEquiv = "Refresh";
redirectMetaTag.Content = string.Format("2;url=http://example.example.net/example/" + filename);
this.Header.Controls.Add(redirectMetaTag);

目前,该文件(例如jpg)正在浏览器中打开

ASP.NET元刷新强制下载

如果要强制浏览器打开另存为对话框,则必须为页面添加几个自定义页眉。

我建议您使用TransmitFile功能:

Response.ContentType = "image/jpeg";
Response.AppendHeader("Content-Disposition","attachment; filename=[your-file-name]");
Response.TransmitFile( Server.MapPath("~/images/[your-file-name]") );
Response.End();

它将自动将文件内容写入响应输出流