亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用FileResult下載ASP.NETMVC中任何類型的文件?

使用FileResult下載ASP.NETMVC中任何類型的文件?

C#
楊__羊羊 2019-06-24 15:58:10
使用FileResult下載ASP.NETMVC中任何類型的文件?有人建議我使用FileResult允許用戶從ASP.NETMVC應用程序下載文件。但是,我能找到的唯一例子總是與圖像文件有關(指定內容類型Image/jpeg)。但如果我不知道文件類型呢?我希望用戶能夠從我的網站的文件區下載幾乎任何文件。我讀過一種這樣做的方法(參見以前的職位對于代碼),這實際上很好,除了一件事:在SaveAs對話框中出現的文件名是從帶有下劃線的文件路徑(文件夾_file.ext)連接起來的。而且,人們似乎認為我應該返回一個FileResult,而不是使用我已經找到的自定義類BinaryContentResult。有人知道用MVC進行這種下載的“正確”方式嗎?編輯:我得到了答案(下面),但我只是認為,如果其他人感興趣,我應該張貼完整的工作代碼:public ActionResult Download(string filePath, string fileName){     string fullName = Path.Combine(GetBaseDir(), filePath, fileName);     byte[] fileBytes = GetFile(fullName);     return File(         fileBytes, System.Net.Mime.MediaTypeNames.Application.Octet, fileName);}byte[] GetFile(string s){     System.IO.FileStream fs = System.IO.File.OpenRead(s);     byte[] data = new byte[fs.Length];     int br = fs.Read(data, 0, data.Length);     if (br != fs.Length)         throw new System.IO.IOException(s);     return data;}
查看完整描述

3 回答

?
大話西游666

TA貢獻1817條經驗 獲得超14個贊

MVC框架本機支持這一點。這個System.Web.MVC.Controller.File控制器提供返回文件的方法。名字,姓名/溪流/列陣.

例如,使用文件的虛擬路徑,您可以執行以下操作。

return File(virtualFilePath, System.Net.Mime.MediaTypeNames.Application.Octet,  Path.GetFileName(virtualFilePath));


查看完整回答
反對 回復 2019-06-24
  • 3 回答
  • 0 關注
  • 1165 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號