我有一个MVC应用程序.当用户单击页面上的打开按钮时,我需要打开pdf文件.存储pdf的文件路径是从数据库中读取的,它是c:上的文件.如何在我的HTML代码中打开它?我有这个代码:
<a href="@Model.CertificatePath" target="_blank" class="button3">Open</a>
Run Code Online (Sandbox Code Playgroud)
但这不会打开我的文件.我需要做什么?我需要在某处指定它是一个pdf ??
Hac*_*ese 10
您需要提供一个动作的路径,该动作将接收文件名,解析完整路径,然后将磁盘上的文件从服务器流式传输到客户端.谢天谢地,网络中的客户端无法直接从服务器的文件系统中读取文件(除非......您建议远程用户计算机@Model.CertificatePath上的文件路径是什么?).
public ActionResult Download(string fileName)
{
string path = Path.Combine(@"C:\path\to\files", fileName);
return File(path, "application/pdf");
}
Run Code Online (Sandbox Code Playgroud)
更新
如果@Model.CertificatePath是客户端实际计算机上的位置,请尝试:
<a href="file://@Model.CertificatePath" target="_blank" class="button3">Open</a>
Run Code Online (Sandbox Code Playgroud)
请注意,某些浏览器可能具有安全设置,因此无法打开本地文件.
在您的视图中尝试这样
@Html.ActionLink("View", "ViewPDF", new { target = "_blank" })
Run Code Online (Sandbox Code Playgroud)
现在Link将在新窗口中打开.您可以在ViewPDF控制器方法中编写pdf字节
| 归档时间: |
|
| 查看次数: |
49528 次 |
| 最近记录: |