我在控制器中有一个Action
public ActionResult Download()
{
return File(FileStream, "application/octet-stream", fileName);
}
如果我想将 FilePathresult 用作:
public FilePathResult Download()
{
return File(FileStream, "application/octet-stream", fileName);
}
我可以点击这样的按钮来调用Download()
@Html.ActionLink("FileDownload", "Download", new { file = item.FileName, GuID = item.DocumentGuID }) /text).Width(10);
Download()
的实现在第二个实例中也是正确的,即在
public FilePathResult Download()
答案 0 :(得分:2)
您的ActionLink
定义了您要传递的参数,因此您需要将这些参数添加到您的操作中
@Html.ActionLink("FileDownload", "Download", new { file = item.FileName, GuID = item.DocumentGuID }) /text).Width(10);
我不确定/text.Width(10);
在那里做了什么,但是正确形成的带有参数的ActionLink
也必须将Html属性定义为最后一个参数,只需传入null
。
以下是正确形成的ActionLink
。
@Html.ActionLink("ActionName", "ControllerName", new { id = 10}, null)
您的链接中有file
和GuID
参数,因此请将这些参数作为参数添加到您的操作中。
public FilePathResult Download(string file, Guid GuID)
{
return File(FileStream, "application/octet-stream", fileName);
}
尝试一下,让我们知道会发生什么: - )
快乐的编码!