0

我正在使用 Rotativa 生成我的观点的 pdf。在我的本地计算机上这有效。在我的在线服务器上,它说找不到文件或目录。这可能是一个权限问题。知道如何解决吗?

提前感谢

4

4 回答 4

3

Rotativa 在其核心使用 wkhtmltopdf,从 >0.12.0.0 开始依赖于可分发的 VC++ 库 (msvcp120.dll)

您可能需要从这里下载安装程序,而不仅仅是将 dll 复制到服务器http://wkhtmltopdf.org/downloads.html

简单测试服务器 wkhtmltopdf 是否有效:

C:\[path to the wkhtmltopdf]\wkhtmltopdf.exe https://google.com test.pdf
于 2015-10-01T19:17:30.797 回答
1

第 1 步:转到存储 pdf 文件的服务器文件夹
第 2 步:在文件夹属性上更改安全性,禁用只读复选框并更改为完全控制或给予写入控制。
第 3 步:在 web.config 中更改为

<system.web>   
<authentication mode="None" /> /// or bring the suitable authentication
.......................

于 2015-01-14T12:11:11.033 回答
1

解决方案是将 Rotativa.Mvc.ActionasPdf() 替换为 Rotativa.Mvc.ViewasPdf

public ActionResult DetailPdf(int? id)
    {
        Progetto Progetti = db.Progetti.Find(id);
        return new Rotativa.MVC.ViewAsPdf("DetailPdf", Progetti);
    }

我不知道 ActionAsPdf 的问题是什么

于 2015-01-07T16:48:00.707 回答
0

我们在 Windows 服务器上遇到了同样的问题。发现 Reports 被 sql server 报告服务使用。所以我们只需要在我们的应用程序中将所有 Reports 实例重命名为其他名称。

于 2015-07-22T08:08:54.127 回答