2009-11-22 64 views
0

如果我把下面的代碼圖片/ Word文檔:下載使用ASP.NET

Response.ContentType = "image/jpeg" 
    Response.AppendHeader("Content-Disposition", "attachment; filename=capitol.jpg") 
    Response.WriteFile(MapPath("capitol.jpg")) 

到Page_Load中,我將得到對話框下載圖像。但是,當我把同樣的代碼放到一個子程序:

Private Sub downloadPic() 
    MsgBox("Hello!") 
    Response.ContentType = "image/jpeg" 
    Response.AppendHeader("Content-Disposition", "attachment; filename=capitol.jpg") 
    Response.WriteFile(Server.MapPath("capitol.jpg")) 
    Response.End() 
End Sub 

我得到的MSGBOX(只是用於測試),但我不明白的下載圖像的能力。有任何想法嗎?

回答

1

您無法輸出到該頁面,也無法在單個請求/響應中推送下載內容。

無論如何,在分配標頭和WriteFile之前,您的代碼將無法正常使用Response.Clear()

+0

感謝您的回覆。當我註釋掉Page_Load代碼並僅嘗試downloadPic()子例程中的代碼時,它不會下載。你知道有什麼好的鏈接來幫助我嗎? – Miamian 2009-11-22 16:13:06

0

謝謝您的評論。我的代碼的問題是我在UpdatePanel中有WriteFile代碼。那是我的錯!