需要帮助向MVC应用程序添加下载功能

时间:2012-06-12 20:36:07

标签: c# asp.net-mvc

我有一个Web MVC应用程序,我想添加一些功能,使用户能够从我的服务器下载大文件。用户拥有Mac和Windows PC的组合。我正在思考javasripts或silverlight。

有人可以就如何实现此功能向我提出建议吗? 你有任何代码示例吗?

2 个答案:

答案 0 :(得分:2)

使用Controller类的File方法。

因此,创建一个名为FilesController的控制器,并使用一个名为DownLoad

的操作方法
public class FilesController : Controller
{  
   public ActionResult Download(string fileId)
   {
     var fullFilePath=FileService.GetFullPath(fileId);  // get the path to file
     return File(fullFilePath,"application/pdf","yourDownLoadName.pdf");  
   }
}

这将返回指定路径( fullFilePath )的PDF文件,其中MimeType/ContentTyp PDF 和“ yourDownLoadName.pdf “作为可下载文件名

用户可以像http://yourdomainname.com/Files/Download?fileId=somefileId

那样访问此内容

这个方法有一堆overloads使用文件路径,字节数组,流等。

答案 1 :(得分:0)

使用FileStreamResult返回类型创建控制器操作。