SendGrid不发送内联附件

时间:2019-12-04 09:47:21

标签: sendgrid sendgrid-api-v3

一段时间以来,我一直在使用 SendGrid 服务发送电子邮件。我们对发送带有电子邮件附件的新要求。当我将附件作为附件发送(处置 type =“ 附件”)时,所有这些都工作正常。但是,当我发送带有嵌入式附件(即嵌入到电子邮件中)的电子邮件时,看不到附件( Disposition type =“ inline ”)。

阅读文档时,您需要在发送内嵌图片时为附件的 ContentId 设置一个值。我已经为所有内联附件设置了 ContentId ,但是它仍然无法正常工作。

我正在将 ContentId 的值设置为GUID,因为文档指出其值应该是唯一的。

这是我的用于在邮件中添加附件的代码。

msg.Attachments = new List<Attachment>();
foreach (var attachment in messageToSend.Attachments)
{
  string contentId = "";
  if (attachment.Disposition == SendGridDispositionType.inline)
  {
    contentId = Guid.NewGuid().ToString();
  }
  Attachment sendgridAttachment = new Attachment
  {
    Content = attachment.Content,
    Type = attachment.MimeType,
    ContentId = contentId,
    Disposition = attachment.Disposition.GetDescription(),
    Filename = attachment.Filename
  };
  msg.Attachments.Add(sendgridAttachment);
}

SendGridDispositionType 是我创建的一个枚举,用于简化 Disposition 的值设置。

我正在使用 SendGrid

的v9.9.0

0 个答案:

没有答案