我有一个pdf,我通过我的GetTestReport操作在json结果中通过流返回:
return this.Json(pdfInBytes);
在我看来:
$.post('@Url.Action("GetTestReport", "Reports")', function(data) {
// What have i put here?
});
如何在整个页面或特定div中显示pdf?
答案 0 :(得分:3)
PDF不能嵌入到文档中,它本身就是一个文档,你不能把它放在JSON结果中,你将把它的URL放在JSON中。
然后您仍然可以将其放在iFrame中(它将是源src
)。或者您window.open('you_pdf_url.pdf');
将其显示在新标签中。
答案 1 :(得分:0)
Nabab是正确的,您无法将PDF转换为JSON。
你的动作'GetTestReport'应该使用FileStreamResult返回pdf本身:
return new FileStreamResult(pdfMemoryStream, "application/pdf");
您没有指定控制器的名称,因此我们假设它被称为“主页”。这意味着如果您浏览到/ Home / GetTestReport,您的pdf将被提供给客户端并显示在浏览器中。
那个网址就是你所需要的!您可以在ViewModel中使用它,或使用JSON将其发送到浏览器。