首页 文章

将二进制流发送到浏览器,然后更新页面

提问于
浏览
0

我有一个带有文本状态的ASP.NET页面和一个用于导出Excel文件的按钮 . 当用户单击该按钮时,我想动态生成文件并将其作为二进制流返回给客户端 . 然后我想更改文本状态以显示成功/失败 .

到目前为止,我可以生成并发送文件没有问题,但显然状态不会显示,因为服务器响应用于发送文件而不是具有新状态的新更新页面 .

我不确定最简洁的方法是什么 . 我能想到一些东西,但这是最好的方式:

  • 用户点击按钮 .

  • 生成文件并将其另存为会话中的流 .

  • 状态已更新,具有新状态的页面将返回给客户端 .

  • 页面上的一段Javascript打开第三方页面,该页面从会话中检索已保存的流 .

你怎么看?这对我来说感觉像马克思 .

谢谢 .

1 回答

  • 0

    反过来做 . 让按钮的请求作为正常响应发送文件,然后在另一个连接的后台拉出会话的状态 . 如果您使用AJAX,则可以通过其DOM,UpdatePanel等动态更新现有页面 . 否则,打开一个单独的窗口,请求状态页面并运行计时器以定期刷新页面 .

相关问题