我创建了一个从会话中获取HTML数据并将其保存为PDF的函数
因为我使用了NReco.PdfGenerator
private static string savePdf()
{
if (HttpContext.Current.Session["ReservationPrintHtml"] != null)
{
StringBuilder objStringBuilder = ((StringBuilder)HttpContext.Current.Session["ReservationPrintHtml"]);
string dir = HostingEnvironment.MapPath("~/Pdf");
if (!Directory.Exists(dir))
{
Directory.CreateDirectory(dir);
}
string fileName = "PDF-" + DateTime.Now.ToString("yyyyMMdd-HHMMssffffff") + ".pdf";
string downloadFile = Path.Combine(dir, fileName);
string htmlContent = objStringBuilder.ToString();
byte[] pdfBytes = (new NReco.PdfGenerator.HtmlToPdfConverter()).GeneratePdf(htmlContent);
File.WriteAllBytes(downloadFile, pdfBytes);
return fileName;
}
else
{
return null;
}
}
我没有遇到任何有关PDF生成的问题但是,执行此功能后,它会直接调用Application_End
中的Global.asax
我试过如果我在应用程序中遇到任何错误但Application_Error
没有执行。
任何人都可以知道这是什么问题吗? 谢谢。
答案 0 :(得分:0)
经过长时间的搜索和谷歌搜索后,我发现我将文件保存在项目中包含的PDF
文件夹中。
因此,每当生成新的PDF文件{>> 1}} AppDomain
文件夹更改运行后,文件夹中的每个recycle
更改都会包含在解决方案包含的项目中。
所以我通过在15-20
文件中添加fcnMode="Disabled"
来找到解决方案。
web.cofig