我想通过弹出一个对话框来下载pdf格式的文件,但此时文件会直接在浏览器上打开。有人可以建议我在我的代码中编辑什么来实现这一点。
protected void gridContributions_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Download")
{
Response.Clear();
Response.ContentType = "application/pdf";
Response.AppendHeader("content-disposition", "Filename=" + e.CommandArgument);
Response.TransmitFile(Server.MapPath("~/Match/Reciepts/") + e.CommandArgument);
Response.End();
}
}
答案 0 :(得分:1)
将文件指定为"附件"在内容处置标题中:
Response.AppendHeader("Content-Disposition", "attachment;filename=" + e.CommandArgument);
最终,它取决于浏览器如何处理响应。此标头是服务器建议到客户端的方式,将响应视为文件,但它不能强制该行为。