ASP.NET之邮件发送

using System;
using System.Collections.Generic;
using System.Text;
using System.Net.Mail;
using System.Net.Mime;

namespace Maticsoft.BLL
{
    public class SendMail
    {
        private MailMessage mailMessage;

        private SmtpClient smtpClient;

        private string password;//发件人密码          

        //开始收邮件功能
        public void GetMail(string To)
        {

        }
        //结束收邮件功能

        /// <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 string Send(string fwqdz)
        {
            string EmailAddress = mailMessage.To.ToString();
            try
            {
                if (mailMessage != null)
                {
                    smtpClient = new SmtpClient();

                    //smtpClient.EnableSsl = true;//启用安全连接

                    smtpClient.Credentials = new System.Net.NetworkCredential(mailMessage.From.Address, password);//设置发件人身份的票据  

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

                    smtpClient.Host = fwqdz; //服务器发送地址比如:"smtp.sina.com";

                    smtpClient.Port = 25;//邮件端口

                    smtpClient.Send(mailMessage);

                    return "";
                }
                else
                {
                    return EmailAddress;
                }
            }
            catch (Exception ex)
            {
                return EmailAddress + "," + ex.Message;//将发送失败的收件人和异常信息Return
            }
        }
    }
}

 

四大门户网站邮件都已测试

转载于:https://www.cnblogs.com/txswqs/archive/2009/01/15/1376033.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值