Генерация и просмотр динамически созданного PDF-файла с помощью iTextSharp в C # с использованием MVC Framework - PullRequest
0 голосов
/ 22 июня 2010

Можно ли динамически генерировать pdf с помощью iTextSharp и просматривать его в новом окне с помощью вызова Json?

Ответы [ 2 ]

0 голосов
/ 22 июня 2010

Почему вы хотите использовать Json?Я думаю, что есть самый простой способ.Пример:

<%= Html.ActionLink("View pdf","GeneratePdf","YourController" new{}, new{target="_blank"}) %>

В вашем контроллере

public ActionResult GeneratePdf()
{
     Document pdfDocument = new Document();
     MemoryStream stream = new MemoryStream();
     PdfWriter.GetInstance(pdfDocument,stream); 
     //add some code to generate your pdf content
     pdfDocument.Close();
     return new FileResult(stream,"application/pdf");
}
0 голосов
/ 22 июня 2010

Нет никакого преимущества в том, чтобы делать это с Json, если только запрос JSON не выполнит какую-либо проверку или тестирование.Я предлагаю создать специальный HttpHandler, который при получении запроса генерирует PDF и возвращает его обратно в браузер.Таким образом, вы можете иметь гиперссылку, которая откроет новое окно и покажет в нем pdf:

<a href="link to the handler" target="_blank">Open PDF</a>
...