C#发送邮件代码

using System; 

using System.Net; 

using System.Net.Mail; 

using System.Net.Mime; 

namespace Fish

    /**//// <summary> 

    /// 发送邮件的类 

    /// </summary> 

    public class SendMail 

    { 

        private MailMessage mailMessage; 

        private SmtpClient smtpClient; 

        private string password;//发件人密码 

        /**//// <summary> 

        /// 处审核后类的实例 

        /// </summary> 

        /// <param name="To">收件人地址</param> 

        /// <param name="From">发件人地址</param> 

        /// <param name="Body">邮件正文</param> 

        /// <param name="Title">邮件的主题</param> 

        /// <param name="Password">发件人密码</param> 

        public SendMail(string To, string From, string Body, string Title, string

Password) 

        { 

            mailMessage = new MailMessage(); 

            mailMessage.To.Add(To); 

            mailMessage.From = new System.Net.Mail.MailAddress(From); 

            mailMessage.Subject = Title; 

            mailMessage.Body = Body; 

            mailMessage.IsBodyHtml = true; 

            mailMessage.BodyEncoding = System.Text.Encoding.UTF8; 

            mailMessage.Priority = System.Net.Mail.MailPriority.Normal; 

            this.password = Password; 

        } 

        /**//// <summary> 

        /// 添加附件 

        /// </summary> 

        public void Attachments(string Path) 

        { 

            string[] path = Path.Split(','); 

            Attachment data; 

            ContentDisposition disposition; 

            for (int i = 0; i < path.Length; i++) 

            { 

                data = new Attachment(path[i], MediaTypeNames.Application.Octet);//实例化

附件 

                disposition = data.ContentDisposition; 

                disposition.CreationDate = System.IO.File.GetCreationTime(path[i]);//获取

附件的创建日期 

                disposition.ModificationDate = System.IO.File.GetLastWriteTime(path[i]);//

获取附件的修改日期 

                disposition.ReadDate = System.IO.File.GetLastAccessTime(path[i]);//获取附

件的读取日期 

                mailMessage.Attachments.Add(data);//添加到附件中 

            } 

        } 

        /**//// <summary> 

        /// 异步发送邮件 

        /// </summary> 

        /// <param name="CompletedMethod"></param> 

        public void SendAsync(SendCompletedEventHandler CompletedMethod) 

        { 

            if (mailMessage != null) 

            { 

                smtpClient = new SmtpClient(); 

                smtpClient.Credentials = new System.Net.NetworkCredential

(mailMessage.From.Address, password);//设置发件人身份的票据 

                smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; 

                smtpClient.Host = "smtp." + mailMessage.From.Host; 

                smtpClient.SendCompleted += new SendCompletedEventHandler

(CompletedMethod);//注册异步发送邮件完成时的事件 

                smtpClient.SendAsync(mailMessage, mailMessage.Body); 

            } 

        } 

        /**//// <summary> 

        /// 发送邮件 

        /// </summary> 

        public void Send() 

        { 

            if (mailMessage != null) 

            { 

                smtpClient = new SmtpClient(); 

                smtpClient.Credentials = new System.Net.NetworkCredential

(mailMessage.From.Address, password);//设置发件人身份的票据 

                smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; 

                smtpClient.Host = "smtp." + mailMessage.From.Host; 

                smtpClient.Send(mailMessage); 

            } 

        } 

    } 

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值