2013-08-21 91 views
2

我需要從模板中生成.NET應用程序(ASP.NET MVC,如果有的話)中的一些word/excel文檔(發票,合同,報告)。那麼,是否可以在word/excel中使用佔位符和控制塊設計模板(我認爲if和foreach對於我的目的來說是足夠的),然後使用POCO(或XML,如果任何類似xslt的引擎存在)數據源從temlate呈現文檔?換句話說,我正在嘗試尋找像NVelocity這樣的免費或開源的word/excel模板引擎。可以用openxml SDK來做到這一點嗎?.net docx/xlsx模板引擎

謝謝。

回答

0

最簡單的方法是使用Microsoft Office XML。 XML格式爲ExcelWord。因爲它是一個正常的XML文件,你可以使用所有的.NET工具和XML的,包括LINQ到XML,XSLT,字符串操作等

如果您不能使用Office XML,你可以嘗試像外部庫:

+0

當我嘗試保存在單獨的XML文檔(如例如使用作爲NVelocity模板),微軟Office打破我的佔位符成不同的XML標籤,所以,我需要在每次編輯msoffice中的模板後編輯此xml。對於文檔更大的2頁是非常困難的。 – Anton

+0

@Anton不幸的是準備模板是最耗時的,但你可以嘗試docx庫,它應該幫助你準備模板 –