内容填充 例子是个表格
public String EmailContentHtmlCopy(String overdueMailType, List<pmEmailConfig> list_Eail, List<OverdueMail_ViewCopy> list_location)
{
String MailReceiverNames = String.Join(",", list_Eail.Select(s => s.NAME).Distinct().ToList());
String RECEIVE_BUILDING = list_Eail[0].BUILDING;
if (constant.buildingDic.ContainsKey(list_Eail[0].BUILDING)) RECEIVE_BUILDING = constant.buildingDic[(list_Eail[0].BUILDING)];
StringBuilder htmlBuilder = new StringBuilder();
htmlBuilder.Append("<h1 align='center' style='text-align:center'>" + overdueMailType + "<span lang='EN-US'></span></h1>");
htmlBuilder.Append("<table class='MsoNormalTable' border='0' cellspacing='0' cellpadding='0' width='100%' style='width:100.0%; border-collapse:collapse'>");
htmlBuilder.Append("<tbody>");
htmlBuilder.Append("<tr style='height:22.5pt'>");
htmlBuilder.Append("<td width='25%' style='width:25.0%; border:solid #A6B9F1 1.0pt; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal'><span style='font-size:10.0pt'>标题<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td width='25%' style='width:25.0%; border:solid #A6B9F1 1.0pt; border-left:none; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal'><span style='font-size:10.0pt'>" + overdueMailType + "<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td width='25%' style='width:25.0%; border:solid #A6B9F1 1.0pt; border-left:none; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal'><span style='font-size:10.0pt'>流程发起人<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td width='25%' style='width:25.0%; border:solid #A6B9F1 1.0pt; border-left:none; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal'><span style='font-size:10.0pt'>系统管理员<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("</tr>");
htmlBuilder.Append("<tr style='height:22.5pt'>");
htmlBuilder.Append("<td style='border:solid #A6B9F1 1.0pt; border-top:none; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal'><span style='font-size:10.0pt'>部门<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal'><span style='font-size:10.0pt'>" + RECEIVE_BUILDING + "<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal'><span style='font-size:10.0pt'>当前日期<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal'><span lang='EN-US' style='font-size:10.0pt'>" + DateTime.Now.ToString("yyyy-MM-dd") + "</span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("</tr>");
htmlBuilder.Append("<tr style='height:22.5pt'>");
htmlBuilder.Append("<td style='border:solid #A6B9F1 1.0pt; border-top:none; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal'><span style='font-size:10.0pt'>班组成员<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal'><span style='font-size:10.0pt'>" + MailReceiverNames + "<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal'><span style='font-size:10.0pt'>维护工序<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal'><span style='font-size:10.0pt'>" + list_Eail[0].LOCATION + "<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("</tr>");
htmlBuilder.Append("</tbody>");
htmlBuilder.Append("</table>");
htmlBuilder.Append("<p class='MsoNormal' style='margin-bottom:12.0pt'><span lang='EN-US'> </span></p>");
htmlBuilder.Append("<table class='MsoNormalTable' border='0' cellspacing='0' cellpadding='0' width='100%' style='width:100.0%; border-collapse:collapse'>");
htmlBuilder.Append("<tbody>");
htmlBuilder.Append("<tr style='height:22.5pt'>");
htmlBuilder.Append("<td colspan='10' style='border:solid #A6B9F1 1.0pt; border-bottom:none; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><span lang='EN-US' style='font-size:10.0pt'> </span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("</tr>");
htmlBuilder.Append("<tr style='height:22.5pt'>");
htmlBuilder.Append("<td width='60' style='width:30.0pt; border:solid #A6B9F1 1.0pt; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><b><span style='font-size:10.0pt'>序号<span lang='EN-US'></span></span></b></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border:solid #A6B9F1 1.0pt; border-left:none; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><b><span style='font-size:10.0pt'>周期文本<span lang='EN-US'></span></span></b></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border:solid #A6B9F1 1.0pt; border-left:none; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><b><span style='font-size:10.0pt'>设备号<span lang='EN-US'></span></span></b></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border:solid #A6B9F1 1.0pt; border-left:none; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><b><span style='font-size:10.0pt'>设备型号<span lang='EN-US'></span></span></b></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border:solid #A6B9F1 1.0pt; border-left:none; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><b><span style='font-size:10.0pt'>设备描述<span lang='EN-US'></span></span></b></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border:solid #A6B9F1 1.0pt; border-left:none; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><b><span style='font-size:10.0pt'>公司编码<span lang='EN-US'></span></span></b></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border:solid #A6B9F1 1.0pt; border-left:none; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><b><span style='font-size:10.0pt'>存放位置<span lang='EN-US'></span></span></b></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border:solid #A6B9F1 1.0pt; border-left:none; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><b><span style='font-size:10.0pt'>工序<span lang='EN-US'></span></span></b></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border:solid #A6B9F1 1.0pt; border-left:none; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><b><span style='font-size:10.0pt'>维护项目<span lang='EN-US'></span></span></b></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border:solid #A6B9F1 1.0pt; border-left:none; background:#BECAEC; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><b><span style='font-size:10.0pt'>计划日期<span lang='EN-US'></span></span></b></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("</tr>");
int i = 1;
foreach (var li in list_location)
{
String cycletime = li.CYCLE_TIME.ToString();
if (constant.cycleDic.ContainsKey(cycletime)) cycletime = constant.cycleDic[cycletime];
String OCCUR_DATE = String.Format("{0:yyyy-MM-dd}", li.OCCUR_DATE);
String NEXT_OCCUR_DATE = String.Format("{0:yyyy-MM-dd}", li.NEXT_OCCUR_DATE);
htmlBuilder.Append("<tr style='height:22.5pt'>");
htmlBuilder.Append("<td style='border:solid #A6B9F1 1.0pt; border-top:none; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><span lang='EN-US' style='font-size:10.0pt'>" + i + "</span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><span style='font-size:10.0pt'>" + cycletime + "<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><span lang='EN-US' style='font-size:10.0pt'>" + li.EQUIP_ID + "</span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><span lang='EN-US' style='font-size:10.0pt'>" + li.EQUIP_MODEL + "</span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><span style='font-size:10.0pt'>" + li.E_EQUIP_DESC + "<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><span lang='EN-US' style='font-size:10.0pt'>None</span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><span lang='EN-US' style='font-size:10.0pt'>None</span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><span style='font-size:10.0pt'>" + li.LOCATION + "<span lang='EN-US'></span></span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><span lang='EN-US' style='font-size:10.0pt'>None</span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("<td style='border-top:none; border-left:none; border-bottom:solid #A6B9F1 1.0pt; border-right:solid #A6B9F1 1.0pt; padding:.75pt .75pt .75pt .75pt; height:22.5pt'>");
//htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><span lang='EN-US' style='font-size:10.0pt'>"+ OCCUR_DATE + "</span></p>");
htmlBuilder.Append("<p class='MsoNormal' align='center' style='text-align:center'><span lang='EN-US' style='font-size:10.0pt'>" + NEXT_OCCUR_DATE + "</span></p>");
htmlBuilder.Append("</td>");
htmlBuilder.Append("</tr>");
++i;
}
return htmlBuilder.ToString();
}
发送代码
var smtpClient = new SmtpClient();
var mailMessage = new MailMessage();
smtpClient.Host = ConfigurationManager.AppSettings["MailHost"];//指定发送邮件的服务器地址或IP,如smtp.163.com
var mailname = ConfigurationManager.AppSettings["MailFrom"];//发件人邮箱用户名
var mailpsd = ConfigurationManager.AppSettings["MailPassWord"];//发件人邮箱密码
smtpClient.Port = 25; //指定发送邮件端口
smtpClient.UseDefaultCredentials = false;
var userName = ConfigurationManager.AppSettings["MailUserName"];
smtpClient.Credentials = new System.Net.NetworkCredential(userName, mailpsd);
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
mailMessage.BodyEncoding = Encoding.UTF8;
mailMessage.IsBodyHtml = true;//是否为html格式
mailMessage.Priority = MailPriority.High;//发送邮件的优先等级
mailMessage.From = new MailAddress(mailname);
foreach (var mailtoads in email.MailReceiver) mailMessage.To.Add(mailtoads);
#region---------------------------------------------------------------------
#endregion
mailMessage.Subject = email.MailSubject;//邮件主题
mailMessage.Body = GetBody(email.MailContent);//邮件内容
//发送E-Mail
smtpClient.Send(mailMessage);