3
Я делаю AJAX POST как:Открыть файл PDF в AJAX POST
$.ajax({
type: 'POST',
url: rootUrl("Home/PrintInvoice/12"),
success: function (result) {
$("#TestInvoicePrint").empty();
$("#TestInvoicePrint").html(result);
window.open(result);
}
});
Где я получаю PDF файл в результате от действий MVC как,
public ActionResult PrintInvoice(long ID)
{
var data = db.Documents.Where(x => x.InvoiceNumber == ID);
ReportDocument rd = new ReportDocument();
rd.Load(Server.MapPath("~/Reports/InvoiceDocument.rpt"));
ConnectionInfo ConnInfo = new ConnectionInfo { ServerName = "10.0.0.154,1433\\sqlexpress", UserID = "CueReader", Password = "[email protected]", DatabaseName = "Cue" };
ParameterFieldDefinitions parmFields = rd.DataDefinition.ParameterFields;
ParameterValues pvals = new ParameterValues();
rd.ParameterFields["DocumentID"].CurrentValues.IsNoValue = true;
Stream stream = rd.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
stream.Seek(0, SeekOrigin.Begin);
return new FileStreamResult(stream, "application/pdf");
}
Как я могу использовать PDF файл в мой элемент DOM из ajax POST?
Вы можете просто сделать это, как HTTP GET. 'Window.open (rootUrl ("Главная/PrintInvoice/12"))'. Используйте OutputCacheAttribute для предотвращения кэширования, если это необходимо. – LostInComputer
Похоже на этот вопрос: http://stackoverflow.com/questions/9840230/how-to-display-a-pdf-stream-in-a-browser-using-javascript – ppoliani
Можете ли вы пояснить, как вы хотите использовать PDF в вашем доме? AFAIK, если вы хотите показать PDF-файл, вам необходимо встроить элемент управления читателем. Вы можете найти эту тему полезной: http://stackoverflow.com/questions/291813/recommended-way-to-embed-pdf-in-html – kiprainey