只是想问如何防止网络浏览器在浏览器中查看,因为每次用户单击链接下载它在浏览器中查看
asp.net controller
<li><asp:HyperLink ID="hl_download" runat="server" >Download</asp:HyperLink></li>
html
<a id="dnn_ctr932_View_hl_download" href="/ideaPark/DesktopModules/ResourceModule/pdf_resources/IdeaPark_ER_diagram.pdf">Download</a>
使用链接按钮,这样您就可以在单击时运行服务器端代码:
<asp:LinkButton ID="hl_download" runat="server" OnClick="hl_download_Click">Download</asp:LinkButton>
然后,在隐藏代码中:
public void hl_download_Click(Object sender, EventArgs e)
{
Response.AddHeader("Content-Type", "application/octet-stream");
Response.AddHeader("Content-Transfer-Encoding","Binary");
Response.AddHeader("Content-disposition", "attachment; filename=\"IdeaPark_ER_diagram.pdf\"");
Response.WriteFile(HttpRuntime.AppDomainAppPath + @"ideaPark\DesktopModules\ResourceModule\pdf_resources\IdeaPark_ER_diagram.pdf");
Response.End();
}
这假设 Web 路径完全映射到文件的文件系统路径。否则修改Response.WriteFile()
以便它指向 pdf 文件在文件系统上的位置。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)