如何在图像点击时从外部网站编码PDF下载?

时间:2013-01-08 12:51:38

标签: asp.net-mvc

我有一个“下载PDF”图片链接,我正在调用一个控制器的动作,以允许用户从外部网站下载特定文件(所以给出了PDF文件链接的完整URL)

我已经编写了以下代码,但它无效。

public virtual ActionLink OpenPDF()
{
string fileName = "http://mysite/filetodownload.pdf";
return File(fileName, "application/pdf", Server.UrlEncode(fileName);
}

从Image链接调用此控制器操作..我可以看到此操作被调用.. 当我点击图片时,代码被执行,并要求打开/保存文件,但当我说保存时说“这个文件无法下载”

你觉得这里有什么不对。

2 个答案:

答案 0 :(得分:2)

为什么不直接将链接指向网站

<a href="http://mysite/filetodownload.pdf" class="some_image_class">Download File</a> 

您无需通过控制器

另一方面,如果您要返回FileResult,则需要将其传递给流,字节数组或磁盘上文件的路径。您无法将其传递给第三方网址。它不像那样工作。它意味着像这样工作:

public virtual ActionLink OpenPDF()
{
string fileName = Server.MapPath("~/Download/filetodownload.pdf");
return File(fileName, "application/pdf");
}

答案 1 :(得分:0)