public ActionResult Index()
{
DownloadMethod("text/plain", "C:/Users/sunny/Pictures/Saved Pictures/A+.gif", "A+.gif");
////文件类型,文件路径,文件下载后的名字
//return File("C:/Users/sunny/Pictures/Saved Pictures/A+.gif", "text/plain", "A+.gif");
return View();
}
public void DownloadMethod(string mimeType, string fileDownloadPath,string fileDownloadName)
{
//如果使用File的方式返回,有时候会出现如下异常,这时候要使用Response方式返回
//An error occurred while communicating with the remote host. The error code is 0x80070006
Response.ClearContent();
//下载后文件的名字,attachment:附件的意思,当存在Content-Disposition这个头的时候,会被浏览器认为要下载文件
Response.AddHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(fileDownloadName));
Response.AddHeader("Content-Length", new FileInfo(fileDownloadPath).Length.ToString());
Response.ContentType = mimeType;
Response.TransmitFile(fileDownloadPath);
Response.Flush();
Response.Close();
}