Ошибка создания PDF с использованием iTextSharp означает, что предыдущий файл PDF отображается - PullRequest
0 голосов
/ 29 июня 2011

Я работаю в asp .net mvc3.

У меня есть следующие операторы в классе контроллера:

PdfWriter.GetInstance(doc, new FileStream((Request.PhysicalApplicationPath + "\\Receipt5.pdf"),
FileMode.Create));
doc.Open();
PdfPTable table = new PdfPTable(2);

table.AddCell("tt[0]");
table.AddCell("tt[1]");
doc.close();

Все время мои значения меняются, но в pdf иногда отображаются старые результаты.пожалуйста, скажите мне, что я должен сделать для этого, чтобы всякий раз, когда я нажимал кнопку «Готово», генерировался новый документ PDF.

Я использую iTextSharp для генерации PDF.

1 Ответ

1 голос
/ 29 июня 2011

Кажется, вы не можете заменить старый файл, потому что он заблокирован.Попробуйте удалить его и посмотреть, что произойдет.В любом случае, учтите, что если несколько пользователей пытаются напечатать один и тот же документ, у вас может возникнуть проблема с параллелизмом.Я бы предложил вам использовать сгенерированное имя файла:

var newFile = System.IO.Path.Combine(Request.PhysicalApplicationPath, Guid.NewGuid().ToString() + ".pdf");
...