我正在图片库上工作,在浏览图片模块上,我有一个下载图标。我需要它作为下载按钮。当用户点击它时,应该显示保存文件对话框,或者使用默认的浏览器下载设置下载文件。
我尝试了很多方法,但没有运气。
下载图标显示在Modal-popup中,因此所有代码都包含在UpdatePannel中
这些图片格式不同(jpeg,gif,tif,psd)
答案 0 :(得分:4)
查看http://www.codeproject.com/Articles/74654/File-Download-in-ASP-NET-and-Tracking-the-Status-o或Best way to stream files in ASP.NET
答案 1 :(得分:0)
最后整理出来:
A)在客户位置下载文件:
public void downloadFile(string fileName, string filePath)
{
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", string.Format("attachment; filename=\"{0}\"", fileName));
Response.WriteFile(filePath + fileName);
}
B)由于函数触发控件(imgDownload
,imgDownloadPsd
)被包装在异步调用下:将其添加到Page Load:
protected void Page_Load(object sender, EventArgs e)
{ ScriptManager.GetCurrent(this.Page).RegisterPostBackControl(imgDownload);
ScriptManager.GetCurrent(this.Page).RegisterPostBackControl(imgDownloadPsd);
}