如何在邮件内容中显示图像?

时间:2012-06-24 12:53:11

标签: c# email webmail

我希望发送包含内容中某些图片的电子邮件。我想我必须将此图像作为电子邮件的附件附加,但我的问题是如何在邮件内容中使用附加图像?

发送邮件的代码

WebMail.SmtpServer = "my.smtp.server";
WebMail.Send(
        clientEmail,
        subject,
        "<html><head></head><body><img src='???' /></body></html>",
        myEmail,
        null,
        new List<string> () { "path" },
        true
    );

我必须写为src

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:6)

http://blog.devexperience.net/en/12/Send_an_Email_in_CSharp_with_Inline_attachments.aspx

的样本也很好

System.Net.Mail.Message类:

示例;

var msg = new System.Net.Mail.Message();
msg.isHTML=true;
msg.Body ="<img src=\"cid:IMG1CONTENT\">";


Attachment mya = new Attachment("file-path-here");
mya.ContentId="IMG1CONTENT";
msg.Attachments.Add(mya);

您可以在http://msdn.microsoft.com/en-us/library/system.net.mail.attachment.aspx

找到更多详情

答案 1 :(得分:0)

要在电子邮件内容中显示图像,一种解决方案是使用绝对URL。将图像上传到您的服务器并使用abosoluter url作为src属性值

<img src='http://www.yourdomain.com/youfolder/image.jpg' alt='your image desc'/>

但有些电子邮件客户端会禁用外部图片。因此,用户可能需要在提示时启用“显示图像”。