MVC 之下载 我的实践

时间:2023-01-16 21:08:34

Controller

1、

public ActionResult DownLoad(string path,string fileName)

{

return File(new FileStream(path, FileMode.Open), "application/octet-stream", Server.UrlEncode(fileName));

}

2、

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

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