1

我们正在制作一个应用程序,它会执行一些处理,最后通过端口 587 和 465 通过电子邮件向用户发送报告。对于端口 567,我们使用标准 System.Net.Mail,一切正常。对于另一个端口 465,我们使用 AegisImplicitMail,我们无法内联发送图像。

这是使用端口 587 发送内联图像的代码

if (SettingDao.GetSMTPPort() == 587)
        {
            InlineChartExplicit = new Attachment(ChartDayImg);
            string contentID = "inlineChartExplicit";
            InlineChartExplicit.ContentId = contentID;
            InlineChartExplicit.ContentDisposition.Inline = true;
            InlineChartExplicit.ContentDisposition.DispositionType = DispositionTypeNames.Inline;

            Html += @"<img src='cid:" + InlineChartExplicit.ContentId + @"' + style='width:50%;height:50%'/>";

        }

并在 emailService

if (InlineAttmExplicitSSL != null)
{
    mail.Attachments.Add(InlineAttmExplicitSSL);
}

然后我们使用 AegisImplicitMail 对端口 465 使用相同的代码,但内联图像不起作用。相反,我们在电子邮件末尾有一个附件

else if (SettingDao.GetSMTPPort() == 465)
        {
            InlineChartImplicit = new MimeAttachment(ChartDayImg);
            string contentID = "inlineChartImplicit";
            InlineChartImplicit.ContentId = contentID;
            InlineChartImplicit.ContentDisposition.Inline = true;
            InlineChartImplicit.ContentDisposition.DispositionType = DispositionTypeNames.Inline;

            Html += @"<img src='cid:" + InlineChartImplicit.ContentId + @"' + style='width:50%;height:50%'/>";

        }

在电子邮件服务中:

if (InlineAttmImplicitSSL != null)
        {
            mailMessage.Attachments.Add(InlineAttmImplicitSSL);
        }

AegisImplicitMail 有什么我们错过的吗?谢谢。

4

0 回答 0