首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET MVC 實作檔案下載功能

     編輯:關於ASP.NET

承接上篇「MVC 檔案上傳顯示圖片」,本文實作將上傳檔案以列表呈現並提供下載。

實體層新增查詢方法

於 FileLibraryEntity.cs 加入 GetUploadFileByPrimarykey 回傳 DataTable,依主鍵查詢檔案資訊。

自訂 ActionResult:DownloadResult

public class DownloadResult : ContentResult {
    public override void ExecuteResult(ControllerContext context) {
        // 設定 Content-Type、Content-Disposition、輸出檔案串流
        // 範例略
    }
}

繼承 ContentResult 並覆寫 ExecuteResult,設定回應標頭 Content-Disposition: attachment; filename=... 並寫入檔案位元組串流,瀏覽器即彈出下載對話框。

Controller 動作:

public ActionResult Download(int id) {
    var dt = entity.GetUploadFileByPrimarykey(id);
    if (dt.Rows.Count > 0) {
        string path = dt.Rows[0]["FilePath"].ToString();
        string name = dt.Rows[0]["FileName"].ToString();
        return new DownloadResult { FilePath = path, FileName = name };
    }
    return RedirectToAction("Index");
}

完整展示 MVC 下載功能的實體查詢、自訂 Result、Controller 協調全流程。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved