我可以發送一封簡單的電子郵件,也可以使用帶有 TemplateId 的特定模板發送電子郵件,如下例所示,但是
問題- 如何在下方發送此模板并添加或包含車把資料(例如 {"name":"Mike", "url":"some_url", "date":"04/18/2022})?
僅供參考 - 我找不到任何顯示任何 C# 示例的檔案。我確實找到了這個鏈接來創建一個交易模板,但它不發送電子郵件。所以不確定這是否是我正在尋找的......
var client = new SendGridClient(Options.SendGridKey);
var msg = new SendGridMessage() {
From = new EmailAddress(fromEmailAddress, fromEmailName),
Subject = subject,
PlainTextContent = message,
HtmlContent = message,
TemplateId = "d-30710e173a174ab58cc641nek3c980d4c"
};
var response = await client.SendEmailAsync(msg);
uj5u.com熱心網友回復:
解決方案是您需要洗掉PlainTextContent和HtmlContent屬性才能使用模板。此外,您需要提供一個dynamicTemplateData包含占位符的物件。
下面是兩個代碼示例,它們發送帶有和不帶有幫助器類的動態模板電子郵件(搜索dynamic_template_data和dynamicTemplateData)。因此,郵件助手類的完整代碼段將是:
var apiKey = Environment.GetEnvironmentVariable("NAME_OF_THE_ENVIRONMENT_VARIABLE_FOR_YOUR_SENDGRID_KEY");
var client = new SendGridClient(apiKey);
var msg = new SendGridMessage();
msg.SetFrom(new EmailAddress("[email protected]", "Example User"));
msg.AddTo(new EmailAddress("[email protected]", "Example User"));
msg.SetTemplateId("d-d42b0eea09964d1ab957c18986c01828");
var dynamicTemplateData = new ExampleTemplateData
{
Subject = "Hi!",
Name = "Example User",
Location = new Location
{
City = "Birmingham",
Country = "United Kingdom"
}
};
msg.SetTemplateData(dynamicTemplateData);
var response = await client.SendEmailAsync(msg);
PS:這里是解釋可用屬性的通用 API 檔案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/461051.html
