95 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			95 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			C#
		
	
	
	
using System;
 | 
						||
using System.Collections.Generic;
 | 
						||
using System.Linq;
 | 
						||
using System.Net;
 | 
						||
using System.Net.Mail;
 | 
						||
using System.Text;
 | 
						||
using System.Threading.Tasks;
 | 
						||
 | 
						||
namespace SgManager.AI
 | 
						||
{
 | 
						||
  public class PostMail
 | 
						||
    {
 | 
						||
        public class EmailParameterSet
 | 
						||
        {
 | 
						||
            /// <summary>
 | 
						||
            /// 收件人的邮件地址 
 | 
						||
            /// </summary>
 | 
						||
            public string ConsigneeAddress { get; set; }
 | 
						||
 | 
						||
            /// <summary>
 | 
						||
            /// 收件人的名称
 | 
						||
            /// </summary>
 | 
						||
            public string ConsigneeName { get; set; }
 | 
						||
 | 
						||
            /// <summary>
 | 
						||
            /// 收件人标题
 | 
						||
            /// </summary>
 | 
						||
            public string ConsigneeHand { get; set; }
 | 
						||
 | 
						||
            /// <summary>
 | 
						||
            /// 收件人的主题
 | 
						||
            /// </summary>
 | 
						||
            public string ConsigneeTheme { get; set; }
 | 
						||
 | 
						||
            /// <summary>
 | 
						||
            /// 发件邮件服务器的Smtp设置
 | 
						||
            /// </summary>
 | 
						||
            public string SendSetSmtp { get; set; }
 | 
						||
 | 
						||
            /// <summary>
 | 
						||
            /// 发件人的邮件
 | 
						||
            /// </summary>
 | 
						||
            public string SendEmail { get; set; }
 | 
						||
 | 
						||
            /// <summary>
 | 
						||
            /// 发件人的邮件密码
 | 
						||
            /// </summary>
 | 
						||
            public string SendPwd { get; set; }
 | 
						||
            /// <summary>
 | 
						||
            /// 发件内容
 | 
						||
            /// </summary>
 | 
						||
            public string SendContent { get; set; }
 | 
						||
        }
 | 
						||
 | 
						||
        public bool MailSend(EmailParameterSet EPSModel)
 | 
						||
        {
 | 
						||
            try
 | 
						||
            {
 | 
						||
                //确定smtp服务器端的地址,实列化一个客户端smtp 
 | 
						||
                System.Net.Mail.SmtpClient sendSmtpClient = new System.Net.Mail.SmtpClient(EPSModel.SendSetSmtp);//发件人的邮件服务器地址
 | 
						||
                //构造一个发件的人的地址
 | 
						||
                System.Net.Mail.MailAddress sendMailAddress = new MailAddress(EPSModel.SendEmail, EPSModel.ConsigneeHand, Encoding.UTF8);//发件人的邮件地址和收件人的标题、编码
 | 
						||
 | 
						||
                //构造一个收件的人的地址
 | 
						||
                System.Net.Mail.MailAddress consigneeMailAddress = new MailAddress(EPSModel.ConsigneeAddress, EPSModel.ConsigneeName, Encoding.UTF8);//收件人的邮件地址和收件人的名称 和编码
 | 
						||
 | 
						||
                //构造一个Email对象
 | 
						||
                System.Net.Mail.MailMessage mailMessage = new MailMessage(sendMailAddress, consigneeMailAddress);//发件地址和收件地址
 | 
						||
                mailMessage.Subject = EPSModel.ConsigneeTheme;//邮件的主题
 | 
						||
                mailMessage.BodyEncoding = Encoding.UTF8;//编码
 | 
						||
                mailMessage.SubjectEncoding = Encoding.UTF8;//编码
 | 
						||
                mailMessage.Body = EPSModel.SendContent;//发件内容
 | 
						||
                mailMessage.IsBodyHtml = false;//获取或者设置指定邮件正文是否为html
 | 
						||
 | 
						||
                //设置邮件信息 (指定如何处理待发的电子邮件)
 | 
						||
                sendSmtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;//指定如何发邮件 是以网络来发
 | 
						||
                sendSmtpClient.EnableSsl = false;//服务器支持安全接连,安全则为true
 | 
						||
 | 
						||
                sendSmtpClient.UseDefaultCredentials = false;//是否随着请求一起发
 | 
						||
 | 
						||
                //用户登录信息
 | 
						||
                NetworkCredential myCredential = new NetworkCredential(EPSModel.SendEmail, EPSModel.SendPwd);
 | 
						||
                sendSmtpClient.Credentials = myCredential;//登录
 | 
						||
                sendSmtpClient.Send(mailMessage);//发邮件
 | 
						||
                return true;//发送成功
 | 
						||
            }
 | 
						||
            catch (Exception)
 | 
						||
            {
 | 
						||
                return false;//发送失败
 | 
						||
            }
 | 
						||
        }
 | 
						||
 | 
						||
    }
 | 
						||
}
 |