我正在为我的项目使用NReco html到pdf转换器。
它在服务器计算机上给我3天错误,它工作了几个月没有任何问题。更糟糕的是,该项目在具有相同代码的本地PC上运行良好。我想,问题与某些文件夹自动处理或服务器PC上已经创建的临时文件。我还删除了/ user和Windows / temp文件夹下的临时文件,但仍然出现错误:
简单的错误消息是:“文件存在”
码:
public static byte[] ToPDF(this HttpContext context, string htmlContent )
{
string logFile = context.Request.PhysicalApplicationPath + "\\" + "log.txt";
try
{
var converter = new HtmlToPdfConverter();
converter.Margins = new PageMargins { Bottom = 20, Top = 18 };
var pdfBytes = converter.GeneratePdf(htmlContent); //THROW EXCEPTION ON THIS LINE
errorMsg = "Error Code:00x1";
return null;
}
catch (Exception exp)
{
errorMsg = "Error Code:00x2";
CreateErrorLog(context ,exp);
return null;
}
}
最佳答案
我已通过将NReco.PdfGenerator.dll更新到版本1.1.11.0来修复它,它使用的是过期版本(3年前发布)并且错误消失了。
注意:当我使用Nuget软件包管理器卸载和安装Nreco时,它安装的是相同的旧版本,我不知道为什么,所以我必须从以下位置下载它:
https://pdfgenerator.codeplex.com/
并从项目的引用中手动删除旧的.dll,并添加新的NReco.PdfGenerator.dll