gpt4 book ai didi

c# - ASP.NET Response.AddHeader 关闭窗口

转载 作者:太空宇宙 更新时间:2023-11-03 16:12:14 30 4
gpt4 key购买 nike

我在页面上有一个 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();

有谁知道新窗口关闭的原因以及如何让它保持打开状态?

谢谢,

最佳答案

由于你清除了内容,然后传输了一个文件,所以“页面”上没有任何东西可以显示。甚至没有页面。

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

关于c# - ASP.NET Response.AddHeader 关闭窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17068634/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com