返回一個檔案

ActionResult 可以通過根據副檔名定義指定檔案路徑和檔案型別來返回 FileContentResult,稱為 MIME 型別。

MIME 型別可以使用 GetMimeMapping 方法根據檔案型別自動設定,或者以適當的格式手動定義,例如“text / plain”。

由於 FileContentResult 需要將一個位元組陣列作為檔案流返回,因此 System.IO.File.ReadAllBytes 可用於在傳送請求的檔案之前將檔案內容作為位元組陣列讀取。

public class FileController : Controller
{
     public ActionResult DownloadFile(String fileName)
     {
          String file = Server.MapPath("~/ParentDir/ChildDir" + fileName);
          String mimeType = MimeMapping.GetMimeMapping(path);

          byte[] stream = System.IO.File.ReadAllBytes(file);
          return File(stream, mimeType);
     }
}