2009-06-10 67 views
1

我有一個應用程序生成幾個不同的郵件。這些郵件目前使用字符串生成器生成,生成基於HTML的字符串即郵件內容。.NET模板文件

這種方法變得混亂。代碼是與HTML等對象混合等我想要的是一個模板類似於例如MVC中使用的模板,然後使用此模板的輸出添加到郵件

這可以使用例如T4添加如何傷口的工作,或者我應該使用另一種方法嗎?

模板不必在運行時即可編輯,即使這樣做會很好。

回答

2

它可以用T4完成。它的工作方式與MVC中的方式完全相同。

您應該考慮獲取Clarius T4 Editor,因爲Visual Studio沒有提供開箱即用的T4智能感知,而且Clarius T4編輯器可以提供該功能。

+0

關於如何用對象提供模板然後在模板中使用該對象並返回生成的字符串的任何好示例? – Riri 2009-06-12 10:37:06

+0

TextTransform.exe是執行此操作的命令行工具。請參閱http://msdn.microsoft.com/en-us/library/bb126461.aspx – 2009-06-12 14:45:43

1

您是否考慮過使用XSLT?您可以通過在.Net中應用XSL變換輕鬆地從原始XML創建HTML文檔。我們將XSL模板存儲在數據庫中,並使用簡單的名稱/值對方法在代碼中填充模板。它非常有效和靈活,並且輸出可以輕鬆地傳送到瀏覽器。或者,您可以將各個模板存儲在服務器上的文件中,然後以這種方式加載它們。

無論哪種方式,the amount of code to implement this is relatively simple和.Net都有很多類以便於實現。如果你想要一個我們如何實現這個的例子,留下一個評論,我會附加一些代碼示例到這個答案。