我有一个使用 C# 的网页,我希望用户能够单击链接(或链接按钮或按钮,我不挑剔)并显示“另存为”对话框窗口,以便他们可以下载文件。文件本身位于另一台服务器上,因此我必须使用绝对路径(i:\division\department\publicfiles\filename.pot)。有谁知道这是怎么做到的吗?
我在这里查找了问题,有些人建议使用 webClient.DownloadFile。但我无法使用它,因为它要求您已经知道用户希望将文件下载到其计算机上的位置。基本上我正在寻找的是当您右键单击链接并选择“另存为”时会发生什么,但当您左键单击链接时会发生什么。
谢谢
“文件本身位于另一台服务器上”对我来说听起来好像它可能不会发布到网络上,因此没有 URL。因此,简单的锚标记在这种情况下不起作用。我想你正在寻找Response.TransmitFile() http://msdn.microsoft.com/en-us/library/12s31dhy%28vs.80%29.aspx.
当他们单击链接时,您需要发送文件并显式设置内容类型和内容处置标头。将内容处置标头设置为attachment
将弹出另存为对话框。像(未经测试):
Response.ContentType = "application/x-pot";
Response.AppendHeader("Content-Disposition","attachment; filename=filename.pot");
Response.TransmitFile(@"i:\division\department\publicfiles\filename.pot");
Response.End();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)