我正在使用Rotativa在我的“MVC”应用程序中生成PDF.如何保存Rotativa PDF?所有过程完成后,我需要将文档保存在服务器上.
代码如下:
public ActionResult PRVRequestPdf(string refnum,string emid) { var prv = functions.getprvrequest(refnum,emid); return View(prv); } public ActionResult PDFPRVRequest() { var prv = Session["PRV"] as PRVRequestModel; byte[] pdfByteArray = Rotativa.Wkhtmltopdfdriver.ConvertHtml("Rotativa","Approver","PRVRequestPdf"); return new Rotativa.Viewaspdf("PRVRequestPdf",new { refnum = prv.rheader.request.Referenceno }); }
解决方法
你可以尝试一下
var actionResult = new ActionAsPdf("PRVRequestPdf",new { refnum = prv.rheader.request.Referenceno,emid = "Whatever this is" }); var byteArray = actionResult.BuildPdf(ControllerContext); var fileStream = new FileStream(fullPath,FileMode.Create,FileAccess.Write); fileStream.Write(byteArray,byteArray.Length); fileStream.Close();
如果那样做不起作用,你可以按照答案here
只要确保你是这样做的,不要让PRVRequestPdf作为PDF视图返回,而不是像上面那样的普通视图(只提到我自己犯了很多乐趣).
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。