将 PDF 文件保存到 ASP.net 后申请结束

Application End after saving PDF file in ASP.net

我创建了一个函数,它从会话中获取 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 生成的问题,但是,在执行此函数后,它直接调用 Global.asax
中的 Application_End 我已经尝试过如果我在应用程序中遇到任何错误但 Application_Error 没有执行。

谁能知道问题出在哪里?
谢谢。

经过长时间的搜索和谷歌搜索,我发现我正在将文件保存在我的项目中包含的 PDF 文件夹中。
因此,每当文件夹更改 运行 时 AppDomain recycle 生成新的 PDF 文件时,在解决方案包含的项目中包含的文件夹中的每 15-20 更改之后。 所以我通过在 web.cofig 文件中添加 fcnMode="Disabled" 找到解决方案,如下所示。

<httpRuntime targetFramework="4.5.2" fcnMode="Disabled" />