题
我已经测试了这个在IIS6.1,即7,ASP.NET 3.5sp1.
我有一个文件下载的方法在我aspx代码隐藏:
Response.ContentType = contentType;
Response.AppendHeader("Content-Disposition", contentDisposition);
Response.BinaryWrite(file);
这个伟大的工程,但是如果我试图修改任何我断绝侧控制的变化不采取会影响。我有隔离这一呼吁ContentType,这显然whipes所有待处理的更改以响应流的时候叫什么名字?这听起来是不是熟悉的人吗?
如果代码需要一个备用支并呼吁下载不火的标记修改如预期的那样。
任何建议,关于如何,我可以解决这个问题和有页冲附件和更新的用户界面,在同样的响应流?
这是专门用于更新ValidationSummary,因此我可以撕成JS在PageRequestManager事件完全作为最后的手段,但我不喜欢依赖JS这一点。
解决方案
不知道你想做什么 - 你试图同时服务下载文件和更新他们链接到它从HTML页面?这不是HTML是如何工作的。
如果你想达到这个结果,那么你基本上要呈现的元重定向去这是在返回的HTML文件,这样,该网页将加载,然后下载开始(就像你会看到在很多下载网站)。
其他提示
作为fyjham说,我真的不明白什么你想做的。一些提示,可能会有所帮助:
- 请记住,呈现阶段,当时的内容从你的标记和控制产生,发生的几乎的最后阶段在代码后面(以及后Page_Load)
- 一旦你冲洗头,你不能置他们再次
- 控制可以复盖一些HTTP头
- 你不能混合了,文件下载和HTML标记在同一个HTTP响应
不隶属于 StackOverflow