• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C# 发送邮件内容嵌入图片

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

 我们在发送邮件时,一般图片都是用网络路径,但有时如果接收方不可直接访问外网,就不能看到图片了,比如公司内部邮件,跟外界就没法交流图片。

那么我们就来把图片嵌入邮件中;查看人就没有限制了。

1。以linked的方式,此方式在邮件中不会出现图片的附件

 

 

邮件内容调用图片格式为:<img src=\"cid:Email001\">

发送邮件的服务端代码为:

SmtpClient 发送邮件的对象

 

折叠C# 代码
  1. System.Net.Mail.MailMessage mailMessage = new System.Net.Mail.MailMessage();      
  2. mailMessage.From="发送者邮箱";      
  3. mailMessage.To.Add("收件人邮件列表");      
  4. mailMessage.CC.Add("抄送人邮件列表");      
  5. mailMessage.Subject = subject;      
  6. AlternateView htmlBody = AlternateView.CreateAlternateViewFromString(content,null,"text/html");      
  7. LinkedResource lrImage = new LinkedResource("a.jpg","image/gif");      
  8. lrImage.ContentId = "Email001";      
  9. htmlBody.LinkedResources.Add(lrImage);      
  10. mailMessage.AlternateViews.Add(htmlBody);      
  11. SmtpClient.Send(mailMessage);     

例程:

折叠C# 代码
  1.             SmtpClient smtp = new SmtpClient();   
  2.             smtp.DeliveryMethod = SmtpDeliveryMethod.Network;   
  3.             smtp.Host = "smtp.163.com";   
  4.             smtp.Credentials = new NetworkCredential("renzhijie1111""**");   
  5.   
  6.             MailMessage mm = new MailMessage();   
  7.             mm.From = new MailAddress("[email protected]""test");   
  8.             mm.To.Add("[email protected]");   
  9.   
  10.             mm.Subject = "测试图片邮件";   
  11.   
  12.             string plainTextBody = "如果你邮件客户端不支持HTML格式,或者你切换到“普通文本”视图,将看到此内容";   
  13.             mm.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(plainTextBody, null"text/plain"));   
  14.   
  15.             ////HTML格式邮件的内容   
  16.             string htmlBodyContent = "如果你的看到<b>这个</b>, 说明你是在以 <span style=\"color:red\">HTML</span> 格式查看邮件<br><br>";   
  17.             htmlBodyContent += "<a href=\"http://www.fenbi360.net粉笔编程网</a> <img src=\"cid:weblogo\">";   //注意此处嵌入的图片资源   
  18.             AlternateView htmlBody = AlternateView.CreateAlternateViewFromString(htmlBodyContent, null"text/html");   
  19.   
  20.               
  21.             LinkedResource lrImage = new LinkedResource(@"d:\1.jpg""image/gif");   
  22.             lrImage.ContentId = "weblogo"//此处的ContentId 对应 htmlBodyContent 内容中的 cid: ,如果设置不正确,请不会显示图片   
  23.             htmlBody.LinkedResources.Add(lrImage);   
  24.   
  25.             mm.AlternateViews.Add(htmlBody);   
  26.   
  27.             ////要求回执的标志   
  28.             mm.Headers.Add("Disposition-Notification-To""[email protected]");   
  29.   
  30.             ////自定义邮件头   
  31.             mm.Headers.Add("X-Website""http://www.fenbi360.net");   
  32.   
  33.             ////针对 LOTUS DOMINO SERVER,插入回执头   
  34.             mm.Headers.Add("ReturnReceipt""1");   
  35.   
  36.             mm.Priority = MailPriority.Normal; //优先级   

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C博客作业01--分支、顺序结构发布时间:2022-07-13
下一篇:
数据结构C语言 数组 一维数组的遍历 空间换取时间发布时间:2022-07-13
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap