我们正在制作一个应用程序来执行某些过程,最后通过电子邮件向用户发送报告,通过端口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%'/>";
}
在emailservice中:
if (InlineAttmImplicitSSL != null)
{
mailMessage.Attachments.Add(InlineAttmImplicitSSL);
}
AegisImplicitMail有没有遗漏的东西?感谢。