//引用
using System.Text;
namespace JOYHEN.CommonMessage.NetMessage
{
/// <summary>
/// asp.net发送邮件
/// </summary>
public class SysMailMessage
{
private string _subject;
private string _body;
private string _from;
private string _fromName;
private string _recipientName;
private string _mailDomain;
private int _mailserverport;
private string _username;
private string _password;
private bool _html;
private string _recipient;
private string _attachMentPath;
/// <summary>
/// 主题
/// </summary>
public string Subject
{
get { return this._subject; }
set { this._subject = value; }
}
/// <summary>
/// 正文
/// </summary>
public string Body
{
get { return this._body; }
set { this._body = value; }
}
/// <summary>
/// 发件人地址
/// </summary>
public string From
{
get { return _from; }
set { this._from = value; }
}
/// <summary>
/// 发件人姓名
/// </summary>
public string FromName
{
get { return this._fromName; }
set { this._fromName = value; }
}
/// <summary>
/// 收件人姓名
/// </summary>
public string RecipientName
{
get { return this._recipientName; }
set { this._recipientName = value; }
}
/// <summary>
/// 邮箱域
/// </summary>
public string MailDomain
{
get { return this._mailDomain; }
set { this._mailDomain = value; }
}
/// <summary>
/// 邮件服务器端口号
/// </summary>
public int MailDomainPort
{
set { this._mailserverport = value; }
get { return this._mailserverport; }
}
/// <summary>
/// SMTP认证用户名
/// </summary>
public string MailServerUserName
{
set { this._username = value.Trim() != "" ? value.Trim() : ""; }
get { return _username; }
}
/// <summary>
/// SMTP认证密码
/// </summary>
public string MailServerPassWord
{
set { this._password = value; }
get { return _password; }
}
/// <summary>
/// 是否Html邮件
/// </summary>
public bool Html
{
get { return this._html; }
set { this._html = value; }
}
/// <summary>
/// 收件人的邮箱地址
/// </summary>
/// <param name="username"></param>
/// <returns></returns>
public bool AddRecipient(params string[] username)
{
this._recipient = username[0].Trim();
return true;
}
/// <summary>
/// 附件
/// </summary>
/// <remarks>多个附件路径以分号隔开</remarks>
public string AttachMentPath
{
get { return this._attachMentPath; }
set { this._attachMentPath = value; }
}
/// <summary>
/// 发送
/// </summary>
/// <returns></returns>
public bool Send()
{
System.Net.Mail.MailMessage myEmail = new System.Net.Mail.MailMessage();
Encoding eEncod = Encoding.GetEncoding("utf-8");
myEmail.From = new System.Net.Mail.MailAddress(this.From, this.Subject, eEncod);
myEmail.To.Add(this._recipient);
myEmail.Subject = this.Subject;
myEmail.IsBodyHtml = true;
myEmail.Body = this.Body;
myEmail.Priority = System.Net.Mail.MailPriority.Normal;
myEmail.BodyEncoding = Encoding.GetEncoding("utf-8");
if (!string.IsNullOrWhiteSpace(this.AttachMentPath))
{
string[] arrAttach = this.AttachMentPath.Split(';');//拆分附件
for (int i = 0; i < arrAttach.Length; i++)
{
System.Net.Mail.Attachment mailAttach = new System.Net.Mail.Attachment(arrAttach[i]);
myEmail.Attachments.Add(mailAttach);
}
}
System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient();
smtp.Host = this.MailDomain;
smtp.Port = this.MailDomainPort;
smtp.Credentials = new System.Net.NetworkCredential(this.MailServerUserName, this.MailServerPassWord);
//当不是25端口(gmail:587)
if (this.MailDomainPort != 25)
{
smtp.EnableSsl = true;
}
try
{
smtp.Send(myEmail);
}
catch (System.Net.Mail.SmtpException e)
{
return false;
}
return true;
}
}
}
如有不明白的地方欢迎加QQ群
14670545 探讨
asp.net 发送邮件
最新推荐文章于 2020-06-27 21:46:41 发布