ASP.净的回应.AddHeader关闭窗口

本文关键字:窗口 AddHeader 回应 ASP | 更新日期: 2023-09-27 18:18:07

我在一个页面上有一个asp.net超链接,当点击它时会在一个新窗口中打开一个新页面:

lnkPrint.NavigateUrl = blah blah;
lnkPrint.Target = "_blank";

在这个新页面中是一个UserControl,它用OpenXML创建一个Word文档。我试图在不关闭新窗口的情况下向用户展示Word文档。但是,窗口只是将文档呈现给用户,然后关闭窗口,返回到带有超链接的页面。

HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.ClearHeaders();
HttpContext.Current.Response.AddHeader("content-disposition", "attachment; filename=" +     masterFileName);
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
HttpContext.Current.Response.TransmitFile(masterContainer);
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.Close();

有谁知道为什么新窗口关闭了,我怎么才能让它保持打开状态?

谢谢,

ASP.净的回应.AddHeader关闭窗口

由于您清除了内容,然后传输了文件,因此"页面"上没有任何内容要显示。甚至连一页都没有

如果你想打开一个新的选项卡,在那里显示一条消息,然后开始下载,你必须让新页面通过JavaScript调用另一个页面(下载本身)