Kas*_*f R 6 c# asp.net selectpdf
我正在使用“用于.NET的SelectPdf Html到Pdf转换器–社区版”生成pdf文件。在Live服务器上一切正常。当我尝试生成pdf文件时,突然出现错误。
如果我重新启动服务器,它可以正常工作一段时间,但是一段时间后,错误再次开始出现。
我正在使用该库的最新版本。以下是错误的完整详细信息
无法获取转换结果标头。数据传输错误。数据传输错误109
错误详情
System.Exception
无法获取转换结果标头。数据传输错误。数据传输错误109System.Exception:无法获取转换结果标头。数据传输错误。数据传输错误109
在SelectPdf.HtmlToPdf。(字符串
A_0,字符串A_1,字符串A_2,字符串A_3,布尔值A_4)
在SelectPdf.HtmlToPdf 。?(字符串A_0,字符串A_1,字符串A_2,?[]&A_3,?&A_4).HtmlToPdf.ConvertHtmlString(String htmlString,String baseUrl)
在BusinessLogic.SalaryManager.ConvertToPDF(SalarySlipExtra salalSlip,字符串标题,字符串模板,String baseUrl)
在BusinessLogic.SalaryManager.PrintSlips(列出1个id,布尔值isPrint)1 Ids, String baseUrl)
at SchoolMS.Web.Controllers.api.Manage.ApproveSalaryController.Post(List
此错误代码仅表明未收到预期响应。这强烈表明服务器上的错误导致服务器无法正确完成 PDF 创建。
在您的情况下,事情会运行一段时间然后失败,因此您可能耗尽了创建 PDF 所需的某些服务器资源。查看服务器事件日志并启用应用程序日志记录,您可能会看到警告或错误消息,它们将为您指明正确的方向。
如果您有可重现的故障场景,您可以将调试器附加到服务器上的程序并详细观察其失败情况。
您可以使用 sysinternals processExplorer 和 processMonitor 来查看 SelectPDF 库正在使用哪些资源并观察任何故障。
其他人也报告了类似的问题,SelectPDF 站点在此处提供了一些故障排除提示。
可能导致您的(重复出现)问题的常见服务器端错误如下:
内存不足:System.OutOfMemoryException was thrown
文件被另一个进程锁定:ERROR_SHARING_VIOLATION. 检查服务器防病毒排除列表,并确保从实时扫描中排除必要的文件。
超出了非常大的网页的加载时间。尝试增加超时:converter.Options.MaxPageLoadTime = 120;
要转换的页面的 URL 在服务器上未正确解析,即使它在客户端上正确解析也是如此。
文件大小可能太大。如果这是原因,更改 web.config 可能会解决问题。
文件大小太大的可能解决方案:
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1000000000"/>
</requestFiltering>
</security>
Run Code Online (Sandbox Code Playgroud)
在无法创建 PDF 的情况下,需要考虑以下其他事项:
失败原因是Error_Access_Denied. 服务器上的权限不正确(不足)。特别是, Select.Html.dep需要执行权限。
PDF 创建可能发生在工作线程中,并且执行上下文必须允许这样做。
转换器版本错误(32 位与 64 位)。
服务器上缺少.dat或.xml文件
信任问题(尝试<system.web> <trust level="Full" />)
混合打算在 Web 角色中运行的版本和打算在网站 (Azure) 中运行的版本
内存不足的情况。
| 归档时间: |
|
| 查看次数: |
550 次 |
| 最近记录: |