2016年4月17日 星期日

asp.net透過iframe下載檔案

網頁下載方法:常見

  • 使用<a>網址下載的方式。
  • 透過事件的方式來處理。比如click事件後,觸發下載檔案的方法。

如果要資料來源為資料庫或是要透過程式處理一些邏輯,
常見作法是使用Response.Write處理檔案的標頭內容等資訊,
但直接處理會破壞原先網頁的結構,
所以常透過泛型檔(.ashx)或另一個頁面(.aspx)來處理檔案下載的部分。

在此要處理另外一個頁面處理下載檔案,可能會使用開窗或是導頁的方法。

  • 開窗:可能會受到瀏覽器設定限制,阻擋廣告等機制。
  • 導頁:會跑到另外一個頁面,但設計上可能不希望使用者離開原頁面。

網路上也提供另外一種做法,就是透過iframe的方式下載。

程式碼如下: