/// <summary> /// 邮件服务 /// </summary> public class MailService { /// <summary> /// 邮件服务器(mail.szelink.com) /// </summary> private static readonly string SMTP_SERVER = ConfigurationManager.ConnectionStrings["SMTP_SERVER"].ConnectionString; /// <summary> /// 用户名 /// </summary> private static readonly string MAIL_SERVER_USERNAME = ConfigurationManager.ConnectionStrings["MAIL_SERVER_USERNAME"].ConnectionString; /// <summary> /// 密码 /// </summary> private static readonly string MAIL_SERVER_PASSWORD = ConfigurationManager.ConnectionStrings["MAIL_SERVER_PASSWORD"].ConnectionString; /// <summary> /// 来源地址 /// </summary> private static readonly string MAIL_FROM = ConfigurationManager.ConnectionStrings["MAIL_FROM"].ConnectionString; /// <summary> /// 端口号 /// </summary> private static readonly int MAIL_PORT = Convert.ToInt32(ConfigurationManager.ConnectionStrings["MAIL_PORT"].ConnectionString); /// <summary> /// 发送邮件 /// </summary> /// <param name="to">发送地址</param> /// <param name="subject">邮件主题</param> /// <param name="body">邮件内容</param> public static void SendSMTPEMail(string to, string subject, string body) { try { System.Net.Mail.SmtpClient client = new SmtpClient(SMTP_SERVER); client.UseDefaultCredentials = true; client.Port = MAIL_PORT; client.Credentials = new System.Net.NetworkCredential(MAIL_SERVER_USERNAME, MAIL_SERVER_PASSWORD); client.DeliveryMethod = SmtpDeliveryMethod.Network; System.Net.Mail.MailMessage message = new MailMessage(MAIL_FROM, to, subject, body); message.BodyEncoding = System.Text.Encoding.UTF8; message.IsBodyHtml = true; //message.From = strFrom; client.Send(message); } catch (Exception ex) { throw new Exception("发送邮件错误,原因是"+ex.Message); } } /// <summary> /// 发送邮件带附件 /// </summary> /// <param name="to">发送地址</param> /// <param name="subject">邮件主题</param> /// <param name="body">邮件内容</param> /// <param name="attachmentsPath">发送邮件附件地址</param> public static void SendSMTPEMail(string to, string subject, string body,string attachmentsPath) { try { System.Net.Mail.SmtpClient client = new SmtpClient(SMTP_SERVER); client.UseDefaultCredentials = true; client.Credentials = new System.Net.NetworkCredential(MAIL_SERVER_USERNAME, MAIL_SERVER_PASSWORD); client.DeliveryMethod = SmtpDeliveryMethod.Network; //定义邮件附件 Attachment attachmentsData = new Attachment(attachmentsPath, MediaTypeNames.Application.Octet); System.Net.Mail.MailMessage message = new MailMessage(MAIL_FROM, to, subject, body); message.BodyEncoding = System.Text.Encoding.UTF8; message.IsBodyHtml = true; message.Attachments.Add(attachmentsData); client.Send(message); } catch (Exception ex) { throw new Exception("发送邮件错误,原因是" + ex.Message); } } /// <summary> /// 发送邮件带附件 /// </summary> /// <param name="to">发送地址</param> /// <param name="subject">邮件主题</param> /// <param name="body">邮件内容</param> /// <param name="attachmentsPath">发送邮件附件地址</param> public static void SendSMTPEMail(string to, string subject, string body, Stream msMprReport) { try { System.Net.Mail.SmtpClient client = new SmtpClient(SMTP_SERVER); client.UseDefaultCredentials = true; client.Credentials = new System.Net.NetworkCredential(MAIL_SERVER_USERNAME, MAIL_SERVER_PASSWORD); client.DeliveryMethod = SmtpDeliveryMethod.Network; //定义邮件附件 Attachment attachmentsData = new Attachment(msMprReport,"test.jpg", MediaTypeNames.Image.Gif); attachmentsData.ContentId = "ewen"; attachmentsData.ContentType.Name = "image/gif"; ContentDisposition disposition = attachmentsData.ContentDisposition; disposition.Inline = true; attachmentsData.TransferEncoding = System.Net.Mime.TransferEncoding.Base64; System.Net.Mail.MailMessage message = new MailMessage(MAIL_FROM, to, subject,"这里显示图片:<br><img alt='图片' src="cid:ewen" mce_src="cid:ewen">"); message.BodyEncoding = System.Text.Encoding.UTF8; message.IsBodyHtml = true; message.Attachments.Add(attachmentsData); client.Send(message); } catch (Exception ex) { throw new Exception("发送邮件错误,原因是" + ex.Message); } }