2013-04-26 49 views
0

我很茫然,可以使用某些方向。我有一個對客戶進行審計的Windows服務。對於新客戶,我需要爲每個客戶創建一個配置文件。我已經有一個ASP.net C#網頁,爲用戶顯示一個客戶的個人資料:C#Windows服務>渲染網頁並輸出爲PDF

http://webserver/showprofile.aspx?id=CustomerID 

我想運行的一些服務類型的循環,將呈現每個新客戶的個人資料和輸出所有的這些配置文件轉換爲PDF,Word文檔等。有沒有簡單的方法來使用現有的顯示配置文件網頁做到這一點?

如果不是,在C#中做到這一點的最佳方法是什麼?如果它需要一個組件,我會更喜歡免費的東西,非常便宜。如果有什麼可以幫助的話,我目前擁有Telerik完整系列工具的許可證。底線,這必須以編程方式完成,因爲用戶與生成/導出爲PDF無關。他們只會訪問生成的導出文件。

在此先感謝您的幫助。

+0

搜索 'HTML到PDF':http://stackoverflow.com/search?q=%5B.net%5D+html+to+pdf – ZippyV 2013-04-26 11:15:28

+0

我也曾有過類似的問題,使用ABCpdf在我的一個項目中。它非常易於使用,但它不是免費的。儘管如此,您仍然可以免費試用30天,因此可能需要檢查。 http://goo.gl/o258E – Trogvar 2013-04-26 11:36:27

+0

我已經想通了,我將不得不得到某種類型的HTML到PDF組件。我的主要問題是如何渲染網頁並轉儲html格式? Something like foreach(var client in customerList){htmlOutput = htmlOutput +從每個HTML渲染轉儲} – 2013-04-26 19:41:20

回答

1

可以使用下面的命令使用的PDFCreator:

private PDFCreator.clsPDFCreator printer; 
printer = new PDFCreator.clsPDFCreator(); 
printer.cDefaultPrinter = "PDFCreator"; 

printer.cOptions.UseAutosave = 0; 

// Format in which file is to be saved. 0 if for pdf. 
printer.cOptions.AutosaveFormat = 0; 
printer.cClearCache(); 

printer.cStart(); 
foreach(int CustomerId in CustomerIDs)//array of customer ids as an example 
{ 
printer.cPrintURL("http://webserver/showprofile.aspx?id=" + CustomerID.ToString()); 
} 

您可以通過下面的鏈接下載軟件和必要的DLL,並期待在.NET文件夾中的例子。

http://sourceforge.net/projects/pdfcreator/

+0

我最終採用ABCPDF來解決這個問題。我會給你一個答案,因爲我對此不滿意。 – 2013-07-19 05:27:43