2015-02-10 64 views
2

我正在使用Rotativa ActionasPDF()從我的MVC4項目中的視圖生成pdf。它在我的本地實例上完美地工作,但我只是將整個解決方案複製到我的服務器,它不起作用。我收到錯誤「系統找不到指定的文件」,但我不確定它在說什麼文件。我假設它是在談論Rotativa DLL,但我的服務器上也生成了Rotativa文件夾。該解決方案與我的本地副本完全相同。我的網站託管在IIS 8,Windows 2012服務器上。研究人員告訴我,我可能對某個文件夾有權限問題,但我不確定他們會是哪一個。我只是暫時將我所有的控制器&視圖設置爲777權限。沒有運氣。任何想法,我錯過了什麼,或者我怎樣才能確保DLL註冊在我的服務器上?在服務器上找不到Rotativa文件

這裏是我的控制器的操作方法:

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) }; 
    } 

enter image description here

+0

[Rotativa PDF生成本地工作但不在IIS 7上]的可能副本(http://stackoverflow.com/questions/31112349/rotativa-pdf-generation-working-locally-but-not-on-iis-7 ) – meJustAndrew 2016-11-04 19:16:26

回答

0

檢查,如果你加上服務器 -

的libeay32.dll在rotativa目錄中的所有文件

wkhtmltopdf.exe

等。

0

舊線程,但我有同樣的問題,所以我想分享的這樣對於未來尋找的人來說。

確保您有服務器,或者在Rotativa文件夾中的文件上安裝了正確的VS可再發行。

使用服務器IP地址而不是DNS名稱。我不知道這是爲什麼會起作用,但如果我弄明白這一點,我會編輯它。

相關問題