我正在使用C#.Net发送包含嵌入式图像的HTML电子邮件。这些电子邮件在Firefox和Chrome中正常工作,但图像在Internet Explorer(IE)中无法显示。我知道IE设置不会导致问题,因为使用Blat发送的嵌入式图像可以正常工作。我是否错过了某些选项,例如字符集,导致了这个问题?我的代码如下:
MailMessage msg = new MailMessage();
MailAddress from = new MailAddress("Myemail@MyDomain", "My Name");
msg.To.Add("Myemail@MyDomain");
msg.From = from;
msg.Subject = "My subjecct line";
AlternateView htmlView = AlternateView.CreateAlternateViewFromString("This is a sample JPG embedded image<br><img src=\"cid:image1.jpg\">", null, "text/html");
LinkedResource EmbeddedObjects1 = new LinkedResource("PathToImage\\image1.jpg");
EmbeddedObjects1.ContentId = "image1.jpg";
htmlView.LinkedResources.Add(EmbeddedObjects1);
msg.AlternateViews.Add(htmlView);
SmtpClient smtpclient = new SmtpClient("mailhost.domain.com", PortNumber);
smtpclient.Send(msg);
.ContentID =
更改为:.ContentId = Guid.NewGuid().ToString();'
。内容 ID 是 MIME 的一部分,文件扩展名中的 '.' 可能会让它感到困惑。 - CodingGorilla