C# 客户端如何将替代变量传递给 sendgrid 营销模板?
C# client how to pass subsititution variables to sendgrid marketing template?
有一个预定义的营销模板,模板的相关部分如下所示:
Hi [%first_name | Dear Fan%], xxxxxx
sendgrid 模板变量替换有很多不同的语法,非常令人困惑。例如,我见过 [%variable_name%]、{{variable_name}}、-variable_name- 和 <%variable_name%>
如何从 C# 客户端向模板传递 substitution/personalization/template 数据(只是为了列出我见过的似乎指代同一事物的不同名称)?
我假设您使用官方 SendGrid Nuget 包。在这种情况下,您可以根据需要使用 MailHelper
class 及其方法 CreateSingleTemplateEmail
、CreateSingleTemplateEmailToMultipleRecipients
或 CreateMultipleTemplateEmailsToMultipleRecipients
。最简单的情况应该是这样的。
var client = new SendGridClient(ApiKey);
var dynamicTemplateData = new Dictionary<string, string>
{
{"first_name", "John"},
{"last_name", "Snow"},
};
var msg = MailHelper.CreateSingleTemplateEmail(
new EmailAddress("from@test.com"),
new EmailAddress("to@test.com"),
"d-template-id",
dynamicTemplateData);
var response = await client.SendEmailAsync(msg);
上述方法肯定适用于交易模板,我不是 100% 确定营销模板。
有一个预定义的营销模板,模板的相关部分如下所示:
Hi [%first_name | Dear Fan%], xxxxxx
sendgrid 模板变量替换有很多不同的语法,非常令人困惑。例如,我见过 [%variable_name%]、{{variable_name}}、-variable_name- 和 <%variable_name%>
如何从 C# 客户端向模板传递 substitution/personalization/template 数据(只是为了列出我见过的似乎指代同一事物的不同名称)?
我假设您使用官方 SendGrid Nuget 包。在这种情况下,您可以根据需要使用 MailHelper
class 及其方法 CreateSingleTemplateEmail
、CreateSingleTemplateEmailToMultipleRecipients
或 CreateMultipleTemplateEmailsToMultipleRecipients
。最简单的情况应该是这样的。
var client = new SendGridClient(ApiKey);
var dynamicTemplateData = new Dictionary<string, string>
{
{"first_name", "John"},
{"last_name", "Snow"},
};
var msg = MailHelper.CreateSingleTemplateEmail(
new EmailAddress("from@test.com"),
new EmailAddress("to@test.com"),
"d-template-id",
dynamicTemplateData);
var response = await client.SendEmailAsync(msg);
上述方法肯定适用于交易模板,我不是 100% 确定营销模板。