我正在使用Mandrill发送电子邮件,并且正在使用Handlebars来呈现电子邮件中的内容。mandrill中使用把手和Mandrill-dotnet的每个循环-library
如果我添加变量,这样一切正常:
后端:
message.AddRecipientVariable("[email protected]", "MYVALUE", "some value");
的HTML模板:
<p>{{MYVALUE}}</p>
但是,如果我尝试使用{{#each}} - 发送的电子邮件中的每个部分都是空的。我在这里做错了什么。我是否以错误的方式传递objStringArray
或者是否还有其他错误来渲染循环?
后端:
var objList = new List<MyObj> {new MyObj() {Qty = "125"}, new MyObj() { Qty = "16"}};
var jsonSerialiser = new JavaScriptSerializer();
var objStringArray = jsonSerialiser.Serialize(objList.ToArray());
message.AddRecipientVariable("[email protected]", "VALUES", objStringArray);
message.merge_language = "handlebars";
_mandrillApi.SendMessage(message, templateName, new List<TemplateContent>());
的HTML模板:
<ul>
{{#each VALUES}}
<li>{{Qty}}</li>
{{/each}}
</ul>