浏览器不打开'保存文件'对话框

问题描述:

我上传了一个文件在服务器上,并给出了一个链接到该文件(test.txt文件说)在我的asp.net页面。当我点击这个链接时,它会在浏览器中打开该文本文件的内容。但我想打开一个对话框,以便用户可以将其保存在他的本地机器上。浏览器不打开'保存文件'对话框

如果文件是DLL类型,那么它会给出404错误(未找到文件)。

我在IE和Firefox中试过它,并且它在我的本地IIS上工作正常,但在服务器机器上没有问题。

有多种方式建议在ASP.Net中强制将文件下载到浏览器,并提供大量示例(“asp.net文件下载”)。这里有一个:http://aspalliance.com/259

基本上,你需要做的是使用Response.WriteFile()或类似的东西将文件传输到浏览器的'代码'中。

您还需要设置几个应答头,使浏览器知道这是不是一个文件,它应该尝试和负载下载:Content-TypeContent-Disposition

就个人而言,我宁愿压缩一个DLL,如果它被下载 - 毕竟一个DLL是可执行代码,并且可以在客户端被阻塞。