0

我正在使用pechkin.synchronized从 HTML 转换为 PDF。在第一个 http 请求上它工作正常,但之后它卡在 convert 方法上,之后什么也不做。

这是我的控制器操作方法:

public ActionResult ToPdf(int id)
{
    var order = _orderBll.GetById(id);
    var viewHtml = order.Body;
    byte[] pdfBuf = new SimplePechkin(new GlobalConfig()).Convert(viewHtml);

    return File(pdfBuf, "application/pdf");
}
4

2 回答 2

1

尝试使用 SynchronizedPechkin。

看:

不幸的是,Pechkin 是一个项目,有许多未解决的问题。您可以通过使用Tuesspechkin 的ThreadSafeConverter 来避免这些,Pechkin 的开发仍在继续。

例子:

IConverter converter =
    new ThreadSafeConverter(
        new PdfToolset(
            new Win32EmbeddedDeployment(
                new TempFolderDeployment())));

// Keep the converter somewhere static, or as a singleton instance!
// Do NOT run the above code more than once in the application lifecycle!

byte[] result = converter.convert(document);
于 2015-03-05T00:31:28.830 回答
0

我的应用程序也有同样的问题。所以我从 Nuget manager 下载了 Synchronized Pechkin。您的代码将如下所示:

using Pechkin;
using Pechkin.Synchronized;
public ActionResult ToPdf(int id)
{
var order = _orderBll.GetById(id);
var viewHtml = order.Body;
byte[] pdfBuf = new SynchronizedPechkin(new GlobalConfig()).Convert(viewHtml);
return File(pdfBuf, "application/pdf");
}
于 2018-12-13T17:56:42.747 回答