C#异步发送Email代码

2018-07-20    来源:open-open

容器云强势上线!快速搭建集群,上万Linux镜像随意使用
异步发送电子邮件代码
/// <summary>
        /// 异步发送电子邮件
        /// </summary>
        /// <param name="fromEmail">发送方电子邮件</param>
        /// <param name="fromPwd">发送方电子邮件密码</param>
        /// <param name="toEmail">接收方电子邮件</param>
        /// <param name="subject">邮件标题</param>
        /// <param name="body">邮件内空</param>
        /// <param name="emailType">邮件类型</param> smtp.163.com.cn; smtp.qq.com.cn; smtp.126.com.cn;  smtp.sina.com.cn
        private void SendEmailAsync(string fromEmail, string fromPwd, string toEmail, string subject, string body, string emailType)
        {
            MailAddress addrFrom = new MailAddress(fromEmail, fromEmail);
            MailAddress addrTo = new MailAddress(toEmail, toEmail);
            MailMessage mm = new MailMessage(addrFrom, addrTo);
            mm.BodyEncoding = Encoding.UTF8;
            mm.IsBodyHtml = true;
            mm.Subject = subject;
            mm.Body = body;
 
            if (!string.IsNullOrEmpty(attFile))
            {
                Attachment att = new Attachment(attFile, MediaTypeNames.Application.Octet);
                ContentDisposition cd = att.ContentDisposition;
                cd.CreationDate = File.GetCreationTime(attFile);
                cd.ModificationDate = File.GetLastWriteTime(attFile);
                cd.ReadDate = File.GetLastAccessTime(attFile);
                mm.Attachments.Add(att);//添加附件
            }
 
            NetworkCredential nc = new NetworkCredential(fromEmail, fromPwd);
            SmtpClient smtp = new SmtpClient(emailType);
            smtp.UseDefaultCredentials = false;
            smtp.Credentials = nc;
            smtp.EnableSsl = false;
            smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
            smtp.SendCompleted+=new SendCompletedEventHandler(smtp_SendCompleted);
            smtp.SendAsync(mm, "OK");
        }
 
        void smtp_SendCompleted(object sender, AsyncCompletedEventArgs e)
        {
            if (e.UserState.ToString() == "OK")
                MessageBox.Show("发送成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }

标签: isp ssl 代码 电子邮件

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:C#验证邮箱,电话,手机,数字,英文,日期,身份证,邮编,网址,IP类等常用函数封装

下一篇:C# 通过UDP进行异步通信的实例代码