使用 Rotativa 将 PDF 文件保存为字节数组或流

Save PDF file as a byte array or stream using Rotativa

我正在尝试使用 Rotativa 将 html 转换为 PDF,但我想将其保存为字节数组或流,以便我可以轻松地将其附加到邮件或其他内容中。我找到了一个解决方案 here 但文件无法通过任何 PDF reader 打开,因为它不是受支持的格式或文件已损坏。

这是来自同一线程的另一个 solution,但我无法弄清楚传递给此函数的必需参数是什么,而且我在网上找不到任何关于 Rotativa 的文档。

我找到了解决方案here

            var actionPDF = new Rotativa.ActionAsPdf("YOUR_ACTION_Method", new { id = ID, lang = strLang } //some route values)
            {
                //FileName = "TestView.pdf",
                PageSize = Size.A4,
                PageOrientation = Rotativa.Options.Orientation.Landscape,
                PageMargins = { Left = 1, Right = 1 }
            };
            byte[] applicationPDFData = actionPDF.BuildPdf(ControllerContext);