Asp.net mvc 4 Rotativa文件仅在服务器上找不到
我正在使用Rotativa ActionasPDF()从MVC4项目中的视图生成pdf。它在我的本地实例上完美地工作,但我只是将整个解决方案复制到我的服务器上,它不工作。我得到错误“系统找不到指定的文件”,但我不确定它所说的是什么文件。我想这是关于Rotativa dll,但我的服务器上也有生成的Rotativa文件夹。解决方案与我的本地副本完全相同。我的网站托管在IIS 8、windows 2012服务器上。研究人员告诉我,我可能对某个文件夹有权限问题,但我不确定它们是哪一个。我只是暂时将我所有的控制器和视图设置为777权限。不走运。你知道我遗漏了什么,或者我如何确保dll在我的服务器上注册了吗 以下是我的控制器操作方法:Asp.net mvc 4 Rotativa文件仅在服务器上找不到,asp.net-mvc-4,rotativa,Asp.net Mvc 4,Rotativa,我正在使用Rotativa ActionasPDF()从MVC4项目中的视图生成pdf。它在我的本地实例上完美地工作,但我只是将整个解决方案复制到我的服务器上,它不工作。我得到错误“系统找不到指定的文件”,但我不确定它所说的是什么文件。我想这是关于Rotativa dll,但我的服务器上也有生成的Rotativa文件夹。解决方案与我的本地副本完全相同。我的网站托管在IIS 8、windows 2012服务器上。研究人员告诉我,我可能对某个文件夹有权限问题,但我不确定它们是哪一个。我只是暂时将我所
public ActionResult DownloadFile(int id = 0)
{
var filename = string.Format("Invoice{0}.pdf", id);
return new ActionAsPdf("Invoice" + "/" + id, new { name = "Invoice" + id }) { FileName = filename, PageSize = Size.Letter, PageOrientation = Orientation.Portrait, PageMargins = new Margins(0, 0, 0, 0) };
}
服务器上需要有VisualC++可重分配包。您可以从这里下载软件包:
检查是否在服务器上的rotativa目录中添加了所有文件- libeay32.dll wkhtmltopdf.exe等等。旧线程,但我有同样的问题,所以我想为将来搜索的人分享解决方案 确保在服务器上安装了正确的VS Redistributable,或在Rotativa文件夹中安装了文件
使用服务器IP地址而不是DNS名称。我不知道为什么会这样,但如果我弄明白了,我会编辑它。您需要在Nuget中更新Rotativa、Rotativa.Core、Rotativa.MVC