У меня есть код (в .ashx-файле), который генерирует PDF-файл из PDF-шаблона.Сгенерированный PDF-файл персонализируется с именем и кодом.Я использую iTextSharp для этого.
Это код:
using (var existingFileStream = new FileStream(fileNameExisting, FileMode.Open))
using (var newFileStream = new FileStream(fileNameNew, FileMode.Create))
{
var pdfReader = new PdfReader(existingFileStream);
var stamper = new PdfStamper(pdfReader, newFileStream);
var form = stamper.AcroFields;
var fieldKeys = form.Fields.Keys;
form.SetField("Name", name);
form.SetField("Code", code);
stamper.FormFlattening = true;
stamper.Close();
pdfReader.Close();
}
context.Response.AppendHeader("content-disposition", "inline; filename=zenith_coupon.pdf");
context.Response.TransmitFile(fileNameNew);
context.Response.ContentType = "application/pdf";
Это работает, но сохраняет файл на сервере.Я не хочу этого делать, потому что будет много людей, загружающих файл PDF, и сервер будет заполнен в кратчайшие сроки.
Итак, мой вопрос, как я могу сгенерировать PDFс iTextSharp, не сохраняя его и не ставя его пользователю?