使用SailThru .NET库向密件抄送发送电子邮件所需的语法是什么?[已关闭]

byqmnocz  于 2023-11-20  发布在  .NET
关注(0)|答案(1)|浏览(221)

已关闭。此问题需要details or clarity。目前不接受回答。
**要改进此问题吗?**通过editing this post添加详细信息并阐明问题。

11天前关闭
Improve this question
我正在使用.NET Library for SailThru来使用C#发送电子邮件。我似乎找不到向密件抄送收件人发送电子邮件的方法。
我看了SailThru's documentation,但找不到如何在C#中做到这一点。
这就是我的非工作代码的样子:

  1. SailthruClient client = new SailthruClient(apiKey, secret);
  2. Sailthru.SailthruResponse response;
  3. Hashtable htHashtable = new Hashtable();
  4. htHashtable.Add("FirstName", "Alfred");
  5. htHashtable.Add("LastName", "Neuman");
  6. Hashtable htOptions = new Hashtable();
  7. Hashtable htSubtable = new Hashtable();
  8. Hashtable htBCC = new Hashtable();
  9. htBCC.Add("Bcc", "[email protected]");
  10. htSubtable.Add("headers", htBCC);
  11. htOptions.Add(0, htSubtable);
  12. response = client.Send("SampleTemplate",
  13. "[email protected]", htHashtable,
  14. htOptions);

字符串
使用此库添加密件抄送电子邮件收件人的适当语法是什么?

093gszye

093gszye1#

根据源代码中的.NET客户端备注,您正在使用的重载方法不支持通过htOptions发送到多个电子邮件:
注意htOptions参数不允许传递邮件头。要指定邮件头,请使用Send方法,该方法接受SendRequest参数
因此,而不是

  1. public SailthruResponse Send(
  2. string strTemplateName,
  3. string strEmail,
  4. Hashtable htVars = null,
  5. Hashtable htOptions = null)

字符串
您应该使用:用途:

  1. public SailthruResponse Send(SendRequest request)


您可以创建request对象,并通过以下方式将其作为参数传递给Send()。重要的是输入“BCC”,而不是“BCC”或“bcc”,如果有许多地址,请用逗号分隔它们,而不是空格:

  1. SendRequest request = new SendRequest
  2. {
  3. Email = "[email protected]",
  4. Template = "SampleTemplate",
  5. Vars = new Hashtable
  6. {
  7. ["FirstName"] = "Alfred",
  8. ["LastName"] = "Neuman"
  9. },
  10. Options = new Hashtable
  11. {
  12. ["headers"] = new Hashtable
  13. {
  14. ["Bcc"] = "[email protected],[email protected]"
  15. }
  16. }
  17. };
  18. response = client.Send(request);


正如@PeterB在评论中所说,对于REST API,有一个可选参数Bcc:
密件抄送:在盲拷贝时包括电子邮件地址。BCC必须大写。请注意,应小心使用BCC,因为某些电子邮件域会在垃圾邮件过滤器中防止它。如果包括多个地址,请用逗号分隔它们。
在实际的JSON请求中应该是这样的:

  1. "options":{"headers":{"Bcc":"[email protected],[email protected]"}}


我使用了Test方法Send的修改版本(源代码在这里),在构建post请求时,它生成了一个JSON对象,其属性选项的格式与REST API文档中指定的格式相同,所以我认为它应该可以工作:
x1c 0d1x的数据
然而,请注意,我还没有能够实际测试它对SailThru API,因为我没有SailThru帐户和必要的apiKey进行实际请求,我也找不到公共测试API。

展开查看全部

相关问题