C# MailMessage發送郵件 內文嵌套圖片
2017-04-21 11:34
375 查看
方法1 採用附件的方式 弊端部分客戶端會將此解析成附件 如雷鳥Thunderbird
Attachment at = new Attachment(Pic);
at.TransferEncoding = System.Net.Mime.TransferEncoding.Base64;
at.ContentDisposition.Inline = true;
at.ContentDisposition.DispositionType = System.Net.Mime.DispositionTypeNames.Inline;
HtmlStr = HtmlStr.Replace(Pic, "cid:" + at.ContentId);//關鍵設置
Mail.Attachments.Add(at);
方法2 弊端 outlook顯示不了
html文本中src='Data:base64/...'採用Base64的編碼,瀏覽器可以直接識別
方法3:163新浪顯示圖片,同時也作為附件了
AlternateView htmlBody = AlternateView.CreateAlternateViewFromString(@HtmlStr, null, "text/html");
foreach (Attachment at in MailAttachs)
{
LinkedResource lrImage = new LinkedResource(at.ContentStream, "image/" + at.Name.Substring(at.Name.LastIndexOf('.')+1));
lrImage.ContentId = at.ContentId;
htmlBody.LinkedResources.Add(lrImage);
}
Mail.AlternateViews.Add(htmlBody);
Attachment at = new Attachment(Pic);
at.TransferEncoding = System.Net.Mime.TransferEncoding.Base64;
at.ContentDisposition.Inline = true;
at.ContentDisposition.DispositionType = System.Net.Mime.DispositionTypeNames.Inline;
HtmlStr = HtmlStr.Replace(Pic, "cid:" + at.ContentId);//關鍵設置
Mail.Attachments.Add(at);
方法2 弊端 outlook顯示不了
html文本中src='Data:base64/...'採用Base64的編碼,瀏覽器可以直接識別
方法3:163新浪顯示圖片,同時也作為附件了
AlternateView htmlBody = AlternateView.CreateAlternateViewFromString(@HtmlStr, null, "text/html");
foreach (Attachment at in MailAttachs)
{
LinkedResource lrImage = new LinkedResource(at.ContentStream, "image/" + at.Name.Substring(at.Name.LastIndexOf('.')+1));
lrImage.ContentId = at.ContentId;
htmlBody.LinkedResources.Add(lrImage);
}
Mail.AlternateViews.Add(htmlBody);
相关文章推荐
- C# MailMessage發送郵件 內文嵌套圖片
- C#.NET发EMAIL的几种方法 MailMessage/SmtpClient/CDO.Message
- C# MailMessage Attachment 中文名附件发邮件-Firefox中文显示正常,网页打开邮件附件中文名乱码
- MailMessage保存为eml文件(C#+SmtpClient)
- C# MailMessage Attachment 中文名附件发邮件-Firefox中文显示正常,网页打开邮件附件中文名乱码
- JSP與JavaMail之4(發送HTML格式郵件)
- C#.NET发EMAIL的几种方法 MailMessage/SmtpClient/CDO.Message
- System.Web.Mail.MailMessage c#发邮件 授权码
- 郵件發送(c#)小試
- C#将MailMessage保存为本地eml文件续(.Net+SmtpClient)
- 郵件發送(c#)小試
- asp.net c# 發送mail
- C# MAIL CLASS
- 技术文档-使用C#进行E-Mail的收发操作
- 用java開發Email工具之發送郵件
- mailmessage发邮件
- C# 每天自动发送E-mail告警程序
- 發送Mail(帶Table)
- C# 发送MAIL
- JavaMail發送郵件中主題亂碼的解決方法