asp.net发送邮件时在正文中插入图片
#region 发送邮件
/// <summary>
/// 通过附件发送邮件
/// </summary>
/// <param name="emailFrom">发送人邮箱地址</param>
/// <param name="emailFromName">发送人姓名</param>
/// <param name="zsrList">收件人集合</param>
/// <param name="csrList">抄送人集合</param>
/// <param name="arrFilePath">附件路径</param>
/// <param name="mailSubject">主题</param>
/// <param name="mailBody">正文内容</param>
/// <returns></returns>
public static bool SendEmail(string emailFrom, string[] files, string emailFromName, IList<CSR> zsrList, IList<CSR> csrList, ArrayList arrFilePath, string mailSubject, string mailBody)
{
MailMessage Email = new MailMessage();
try
{
MailAddress EmailFrom = new MailAddress(emailFrom, emailFromName); //创建发件人邮箱地址对象
Email.From = EmailFrom; //指定发件人
Email.CC.Add(EmailFrom); //将发件人作为抄送人发一份
for (int i = 0; i < zsrList.Count; i++) //循环添加主送人邮箱地址对象
{
MailAddress zsrAddr = new MailAddress(zsrList[i].EMAIL, zsrList[i].NAME);
Email.To.Add(zsrAddr);
}
for (int i = 0; i < csrList.Count; i++) //循环添加抄送人邮箱地址对象
{
MailAddress csrAddr = new MailAddress(csrList[i].EMAIL, csrList[i].NAME);
Email.CC.Add(csrAddr);
}
catch
{
return false;
}
Email.BodyEncoding = System.Text.Encoding.UTF8;
Email.Body += mailBody;
for (int i = 0; i < files.Length; i++)
{
System.Net.Mail.Attachment attachment = new System.Net.Mail.Attachment(files[i]);
Email.Attachments.Add(attachment);
Email.Body += "<img src=\"cid:" + attachment.ContentId + "\"/>";
}
//邮件主题
Email.Subject = mailSubject;
Email.SubjectEncoding = Encoding.GetEncoding(936);
for (int i = 0; i < arrFilePath.Count; i++)
{
string file = arrFilePath[i].ToString(); //附件路径
Attachment data = new Attachment(file, System.Net.Mime.MediaTypeNames.Application.Octet);
// Add time stamp information for the file.
System.Net.Mime.ContentDisposition disposition = data.ContentDisposition;
disposition.CreationDate = System.IO.File.GetCreationTime(file);
disposition.ModificationDate = System.IO.File.GetLastWriteTime(file);
disposition.ReadDate = System.IO.File.GetLastAccessTime(file);
// Add the file attachment to this e-mail message.
Email.Attachments.Add(data);
}
SmtpClient Client = new SmtpClient("172.30.1.13");
Client.UseDefaultCredentials = false;
Client.Credentials = new System.Net.NetworkCredential("shoa", "shnetweb.1234");
Client.DeliveryMethod = SmtpDeliveryMethod.Network;
{
Client.Send(Email);
}
catch (SmtpFailedRecipientsException ex)
{
for (int i = 0; i < ex.InnerExceptions.Length; i++)
{
SmtpStatusCode status = ex.InnerExceptions[i].StatusCode;
if (status == SmtpStatusCode.MailboxBusy || status == SmtpStatusCode.MailboxUnavailable)
{
//Response.Write("Delivery failed - retrying in 5 seconds.");
System.Threading.Thread.Sleep(5000);
Client.Send(Email);
}
}
}
catch (Exception ex)
{
return false;
}
finally
{
for (int i = 0; i < Email.Attachments.Count; i++) //释放占用excel资源
{
Email.Attachments[i].Dispose();
}
}
return true;
}
#endregion
转载于:https://www.cnblogs.com/shengtianlong/archive/2010/09/16/1828173.html
asp.net发送邮件时在正文中插入图片相关推荐
- 成功解决wps文档的论文中插入图片时只显示一半图片(两步教程完美搞定!)
成功解决wps文档的论文中插入图片时只显示一半图片(两步教程完美搞定!) 目录 解决问题 解决思路 解决方法 解决问题 解决wps文档的论文中插入图片时只显示一半图片,如图所示, 解决
- 如何插入html邮件,如何在电子邮件正文中插入HTML
在我的SharePoint网站中,如果将所有权重新分配给其他用户,我将生成电子邮件.此工作正常.但某些时候,html标记在电子邮件中显示.如何在电子邮件正文中插入HTML 如何避免这种情况,它不经常发 ...
- Latex正文中插入罗马数字
1.问题描述 在用latex写论文的时候,有的时候需要在正文里面插入罗马数字. 2.解决方法 目前找到一种还算方便的解决办法,在正文中插入如下代码: \newcommand{\RNum}[1]{\up ...
- Spire.Doc在Word中插入图片时,自适应宽度设置
需求:往Word中插入图片,需要铺满可编辑区域的宽度,此时需要根据文档的宽度自适应图片的大小了,核心代码如下: Paragraph paragraph = doc.createParagraph(); ...
- 图片适应窗口_在word中插入图片,如何避免失真模糊?实用文档建议收藏
插入图片 在WORD文档中插入图片是一个相当常用的操作. 一般通常的做法,是使用工具截图或在其他工具中复制的图片类内容,然后在WORD文档中粘贴出来. 还有一种做法,是使用功能区"插入&qu ...
- C#中操作Word(6)—— 如何向Word中插入图片
一.Word对象模型的重叠性分析 本文主要介绍通过书签Bookmark向Word文档中插入图片的方法.在此之前我们先简单讨论下Word对象模型的重叠性.如果你对Word对象模型还不熟悉,请参考本专栏第 ...
- latex中插入图片以及固定图片位置
如有帮助,请随手点赞. latex中插入图片以及固定图片位置 需要在引言部分加入下面两条命令: \usepackage{graphicx} \usepackage{float} 添加图片时,写下以下命 ...
- 如何快速在PDF文件中插入图片
在 PDF文件中插入图片我优先想到了 Adobe Acrobat DC,胜任此项工作完全 OK.但是有个问题,Acrobat 会自动识别 PDF 中的文字.如果有手写字迹经过 Acrobat 识别再保 ...
- 在html中怎么插入动态图片,如何在gif中插入图片 动态图片某1帧插入图片并控制显示时间|动态图片中插入图片...
大家还记得我以前的一个教程嘛?就是如何在视频中插入图片并控制其显示时间,有印象的话就太棒了,没印象的或就点击上边的文字自己做一下功课吧!! 今天的教程内容和上边所讲到的教程有点相似,都是插入图片,但是 ...
最新文章
- 听说数据标注行业缺“中立”平台,京东金融竖起了大旗
- SQL学习之数据列去空格函数
- 对Java泛型的简单理解
- smarty能创建 php页面,smarty 生成静态html页面
- LeetCode 142——环形链表 II
- yarn oom问题一例
- java 上溯_java中Instrument的上溯造型
- 解决bootstrap模态框居中问题
- Spring Data JPA 必须掌握的 20+ 个查询关键字
- csdn 挣积分和c币方法指南
- SolidWorks导入3DSource零件库的模型方法介绍
- 第1章 Python 顺序结构
- ESP32 入门笔记06: WIFI时钟 + FreeRTOS+《两只老虎》 (ESP32 for Arduino IDE)
- 文档管理利器--云脉文档自动分类快速检索
- Shadow 腾讯插件化——深度解剖框架设计
- 苹果屏幕录制没有声音_苹果手机屏幕不亮但有声音是怎么回事?不要慌,这样就可以解决...
- MySQL 教程(一)
- 深入理解JVM虚拟机13:JVM面试题,看这篇就足够了(87题详解)
- linux使用过程中出现的问题
- 工控前辈经验之谈 | 编写PLC程序我从做Excel表开始