2012-06-12 26 views
4

我一直在嘗試爲我們的組織編寫一些自定義工作流程,但我陷入了一個特定問題。我知道如何創建附件並將它們鏈接到新電子郵件,但我想對模板執行相同的操作。我瞭解如何使用SendEmailFromTemplateRequest類,但我還沒有找到將附件鏈接到它的方法。我發現this article 但我需要更多關於如何使用InstantiateTemplateRequest的細節。我試圖用this as a guide修補它,但到目前爲止我還沒有運氣。使用模板創建電子郵件,然後附上動態附件

我的需求是,我需要從模板創建一個電子郵件,然後附加文件到它動態生成。

回答

1

我不是很確定你將如何使用模板。但有一個解決辦法可能是您可以使用附件發送的相同方式發送電子郵件。創建一些邏輯來獲取模板的字符串內容,根據需要執行字符串處理操作(通常模板中只有幾個字段需要修改,大部分文本保持不變)。現在將該字符串作爲字符串傳遞給電子郵件的正文。我不認爲這應該有任何麻煩。請糾正我,如果我錯過了一些事情或誤解了完整的問題。

+1

您是否知道該方法是否可以保留模板的格式或嵌入圖像?我擔心只是複製字符串可能會影響最終電子郵件的外觀。 – Steve

+0

它不應該改變嵌入圖像的格式等。您可以做的一件事是,確定可以隨時更改的所有文本。將它們標記爲關鍵字並在運行時替換關鍵字。我已經實現了同樣的邏輯,並在每個關鍵詞的開頭都使用了'$',以保持我的html標籤的正確性。嘗試將內容調整爲html表格,以便格式不被破壞。 在我的情況下,我使用'$'符號,因爲我確信我不會在其他地方使用該符號。這幫助我輕鬆找到關鍵詞。您可以使用任何其他標誌。例如:$ start_date或#start_date –

3

我發現我需要here,但我注意到我仍然需要使用IOrganizationService助手來創建電子郵件對象。基本上我創建了InstantiateTemplateRequest,並將其傳遞到IOrganizationService Execute()函數中,然後從InstantiateTemplateResponse對象中檢索Email對象。在收到電子郵件後,我編輯並將其傳遞到IOrganizationService的Create()函數中。之後,我使用SendEmailRequest對象發送它,該對象也需要IOrganizationService Execute()調用。

相關問題