在邮件正文中发送图像

时间:2013-01-22 07:29:50

标签: c# asp.net-mvc image email

我想在邮件正文中发送图像而不是附件。

这是我的代码。

MailMessage mail = new MailMessage();
mail.To.Add(new MailAddress(""toaddress"));

mail.Subject = strSubject;
mail.Body = "<html><body><img src=cid:companylogo/><br><p>Dear Member,</p>" + strBody + "<br/><b>Regards</b>,<br/>Team</body></html>";
mail.IsBodyHtml = true;
AlternateView altView = AlternateView.CreateAlternateViewFromString(mail.Body, null, MediaTypeNames.Text.Html);

LinkedResource logo = new LinkedResource("logo.jpg", MediaTypeNames.Image.Jpeg);
logo.ContentId = "companylogo";
altView.LinkedResources.Add(logo);
mail.AlternateViews.Add(altView);
SmtpClient client = new SmtpClient();
client.Send(mail);

使用此功能,我将图像作为附件。

我将如何将其作为邮件正文发送?

1 个答案:

答案 0 :(得分:1)

您需要做的是将图像作为附件发送,然后从邮件的HTML中引用int。它解释为here

您还可以参考外部服务器中的图像,大多数现代电子邮件客户端都允许这样做。