如何显示流返回的pdf(在JsonResult中)
本文关键字:pdf JsonResult 何显示 显示 返回 | 更新日期: 2023-09-27 18:23:44
我有一个pdf,我通过GetTestReport操作以json结果的形式通过流返回:
return this.Json(pdfInBytes);
在我看来:
$.post('@Url.Action("GetTestReport", "Reports")', function(data) {
// What have i put here?
});
如何在整个页面或特定的div中显示pdf?
PDF不能嵌入到文档中,它本身就是一个文档,并且你不能将它放在JSON中。结果,你将把它的URL放在JSON。
然后,您仍然可以将其放置在iFrame中(它将是源src
)。或者执行window.open('you_pdf_url.pdf');
以在新选项卡中显示它。
Nabab是正确的,您无法将PDF转换为JSON。
您的操作"GetTestReport"应使用FileStreamResult:返回pdf本身
return new FileStreamResult(pdfMemoryStream, "application/pdf");
您没有指定控制器的名称,所以我们假设它被称为"home"。这意味着,如果您浏览到/Home/GetTestReport,您的pdf将被发送到客户端并显示在浏览器中。
那个网址就是你需要的!您可以在ViewModel中使用它,也可以使用JSON将它发送到浏览器。