2009-12-09 61 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標記