2009-12-09 69 views
0

我已经在IIS 6.1,IE 7,ASP.NET 3.5 SP1测试此。ASP.NET响应内容

我有一个方法的文件下载在我的aspx代码隐藏:

Response.ContentType = contentType; 
Response.AppendHeader("Content-Disposition", contentDisposition); 
Response.BinaryWrite(file); 

这个伟大的工程,但如果我试图修改我的任何服务器端的控制所做的更改不会生效。我已经将此分离为对ContentType的调用,这显然是在调用时对响应流的所有待处理更改进行wh擦?这听起来对任何人都很熟悉吗?

如果代码需要一个备用分支和下载不火的标记调用按预期的方式修改。

我如何能解决这个问题,并在页面刷新安装并更新相同的响应流中的UI有什么建议?

这是专门用于更新ValidationSummary的,所以我可以将PageRequestManager事件中的JS完全作为最后的手段分解,但是我不想依赖于JS。

回答

1

不知道你想做什么 - 你试图同时服务下载文件和更新他们链接到它从HTML页面?这不是HTML的工作原理。

如果要达到这个结果,那么你基本上要呈现的元重定向去这是在返回的HTML文件,这样,该网页将加载,然后下载开始(就像你永远见许多下载网站)。

+0

谢谢元重定向提示。 – blu 2009-12-10 14:41:46

1

正如fyjham说,我真的不明白你想要做什么。一些提示,可以帮助:

  1. 请记住,呈现阶段,在生成从您的标记和控件的内容,在代码中发生,因为几乎在最后阶段的后面(的Page_Load好后)
  2. 一旦你冲洗头,你不能重新设置
  3. 控件可以覆盖一些HTTP头
  4. 你不能在同一个HTTP响应混合文件下载和HTML标记