显示响应.Binarywrite在浏览器保存对话框或打开新窗口,保存后关闭
本文关键字:保存 窗口 新窗口 Binarywrite 响应 浏览器 对话框 显示 | 更新日期: 2023-09-27 17:49:35
问题是这样的。我有一个带有文档(Id)的网格。现在,当有人点击一行时,我希望允许他下载或显示该文档。不过为了更简单,假设我在点击按钮时这样做。我试了两种方法,但对我来说都不起作用。
-
我试图回应。在Binarywrite按钮上点击:
Response.Clear(); Response.ClearHeaders(); Response.ClearContent(); Response.ContentType = "application/postscript mime"; Response.AddHeader("content-disposition", "attachment; filename=test.ps"); Response.AddHeader("content-length", _excuteGetDocumentResult.Length.ToString()); Response.ContentEncoding = new System.Text.UTF8Encoding(); Response.BinaryWrite(_excuteGetDocumentResult);
但是什么都没有发生,当我试图修改这段代码时,我通常会得到一些javascript错误,说改变响应…
第二种方法是打开一个新窗口,在页面加载时添加上面的代码。
<asp:Button Text="ShowResult" OnClientClick="radopen('ShowResult.aspx','ShowDocumentDialog'); return false;"
runat="server" />
第二种方法有效,但在保存或取消资源管理器保存文件对话框窗口后,我打开的窗口仍然存在。我试图添加一些javascript来关闭它,但它只适用于没有响应的地方。binarywrite在加载页面…
你知道我怎样才能达到我想要的吗?
方法1
try Response.End();
after Response.BinaryWrite(_excuteGetDocumentResult);