ASP.NET MVC之文件下载

一、MVC下载

方式一:

public FileStreamResult DownFile(string filePath, string fileName)
 {
      string absoluFilePath = Server.MapPath(System.Configuration.ConfigurationManager.AppSettings["AttachmentPath"] +      filePath);
       return File(new FileStream(absoluFilePath, FileMode.Open), "application/octet-stream", Server.UrlEncode(fileName));
 }

方式二:

public ActionResult DownFile(string filePath, string fileName)
 {
 filePath = Server.MapPath(System.Configuration.ConfigurationManager.AppSettings["AttachmentPath"] + filePath);
 FileStream fs = new FileStream(filePath, FileMode.Open);
 byte[] bytes = new byte[(int)fs.Length];
 fs.Read(bytes, 0, bytes.Length);
 fs.Close();
 Response.Charset = "UTF-8";
 Response.ContentEncoding = System.Text.Encoding.GetEncoding("UTF-8");
 Response.ContentType = "application/octet-stream";

Response.AddHeader("Content-Disposition", "attachment; filename=" + Server.UrlEncode(fileName));
 Response.BinaryWrite(bytes);
 Response.Flush();
 Response.End();
 return new EmptyResult();

}

  

View调用:

<href="/Document/DownFile?filePath=@item.Value&fileName=@item.Key">下载</a>  

posted @ 2018-03-02 09:56  邵世铨  阅读(238)  评论(0编辑  收藏  举报