2014-04-09 71 views
0

我正在构建一个mvc3应用程序,该应用程序使用带有名为Field的表的SQL Server数据库。 这个表有许多列。其中的一列是具有字符串值的File9Terme,并存储一个存储在名为BOOKS的文件夹中的PDF文件路径。 我为此构建了一个上传文件。但现在我想为每个PDF文件建立一个下载链接。这里是我的代码:使用mvc3中的下载链接从文件夹下载文件

[HttpPost] 
public FileResult Download(int id) 
{ 
    var document = db.Fields.First(f => f.FieldId == id); 
    var filename = document.File9Terme; 
    return File(filename, document.GetType().ToString()); 
}  

,这里是我的索引视图:

<td> 
<%= Html.ActionLink("Download", "Download", "FieldController", new { id=item.FieldId })%> 
</td> 

问题出在哪里? 感谢您的帮助。

+0

[返回一个文件来查看MVC /下载]的可能重复( http://stackoverflow.com/questions/5826649/returning-a-file-to-view-download-in-mvc) – Liam

回答

0

如果您使用的是链接,它会发送GET请求。所以删除[HttpPost]

其次,如果下载操作方法是在FieldController,只需在您的ActionLink提供“现场”,而不是“FieldController”

<td> 
<%= Html.ActionLink("Download", "Download", "Field", new { id=item.FieldId })%> 
</td>