簡體   English   中英

從代碼發送電子郵件-框架

[英]Sending emails from code - Frameworks

我目前正在編寫一個Web應用程序,該應用程序使用SmtpClient和MailMessage .net API類發送具有動態文本內容的各種電子郵件-我只是發現自己淹沒在字符串構建者的海洋中。

是否有任何電子郵件/模板框架可幫助解決此類問題? 這也適用於中等信任度

我會使用像NVelocity這樣的模板框架

編輯:似乎SourceForge NVelocity已死,但Castle Project的家伙已經將其分叉了。 因為我將Velocity用於Java,而NVelocity是.NET的端口,所以我推薦它;

你可以看一下stringtemplate

NVelocity是我們在上一個項目中使用的

如果您不想在項目中引入其他依賴項,請嘗試T4

我不使用模板框架,但是使用HTML頁面作為電子郵件模板。 然后,我將像“ <#UserName#>”這樣的變量放入HTML中,並用代碼替換。 這使我可以輕松編輯電子郵件的正文,而無需觸摸代碼。...除非我想添加一些新的變量。 使用標准HTML頁面作為模板的另一個好處是非程序員能夠設計/管理電子郵件正文布局...

在某些特殊情況下,當我無法使用工具並且必須編寫我的工具時,正如您所說,您想在模板中進行循環。

我在項目中創建了一個普通的aspx頁面,並在其中放置了我需要的所有控件“服務器控件,數據綁定控件”

然后使用無聲呼叫來調用此頁面:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("MyASPXPage.aspx");
request.Method = "GET";
response = request.GetResponse();
reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
result = reader.ReadToEnd();

之后,您將使結果字符串變量包含您可以作為郵件發送的所有頁面。

我曾經使用過一次,效果很好。

但是請確定是否找到了可以幫助您的工具,這會更好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM