2014-11-05 36 views
0

我在將我的Intranet頁面轉換爲PDF文件時遇到問題。我使用了2個實際可行的解決方案,但有一些問題。wkhtmltopdf無法在使用C#的內聯網站點上工作MVC3

解決方案1: 我使用了wkhtmltopdf.exe工具。我能夠使它在我的本地機器上工作。 但是,當我將它部署到我們的服務器時,它停止工作,直到我發現它沒有與Intranet站點一起工作。當我嘗試Extranet網站時,它正在工作。

解決方案2: 我通過獲取該網站的HTML替代解決方案,並讓wkhtmltopdf.exe工具使其成爲PDF也可以工作,但是,我想要轉換的網頁上的數據以PDF爲數據庫驅動。所以包括圖像在內的所有信息在轉換爲PDF時都未提供。

請幫助,如果有一種方法,使在Intranet站點的wkhtmltopdf.exe工具的工作原理(溶液1)或 將其轉換爲PDF時,我如何能夠獲取包括數據和圖像的整個頁面(溶液2)

非常感謝!

回答

0

它停止工作,直到我注意到它不與Intranet站點一起工作。

這不是一個詳盡的問題報告。我已經通過渲染一個字符串的視圖,然後使用wkhtmltopdf將該字符串轉換爲pdf來完成它。

渲染視圖的字符串:Render a view as a string

我不包括wkhtmltopdf直接,而我用tuespechkin NuGet包:https://github.com/tuespetre/TuesPechkin

0

我要說查看可用的權限。內聯網站點通常與面向公衆的站點具有不同的權限級別。可能是面向公衆的站點具有已應用於.exe的權限,例如IIS_IUSR帳戶,以使其能夠與匿名訪客帳戶一起使用,但缺乏Intranet中所需的權限,而Intranet通常使用域用戶帳戶登錄用戶以驗證資源。

0

對於在您的Intranet服務器上生成pdf的whtmltopdf軟件,您需要將2個文件msvcp120.dll & msvrp120.dll放在與要從服務器端運行的wkhtmltopdf.exe文件相同的文件夾中。希望這可以幫助。