引入命名空间:using System.Net;using System.Net.Mail;
static void Main(string[] args){ //邮件发送对象
MailClass mailclass = new MailClass(); //邮件STMP服务器地址
mailclass.MailServer = "smtp.xxx.com"; //收件人邮件地址
mailclass.MailFrom = "xxx@xxxx.com"; //发件人账号用户
mailclass.MailUserName = "xxx@xxx.com"; //发件人账号密码
mailclass.MailUserPassword = "xxx"; //邮件编码格式
mailclass.MailCharset = "utf-8";
SendMailMethod(mailclass);
}
/// <summary>/// 发送邮件信息/// </summary>/// <param name="mailclass"></param>
public static void SendMailMethod(MailClass mailclass){ try
{
MailMessage mail = new MailMessage(); //收件人
mail.From =
new MailAddress(mailclass.MailFrom, "", Encoding.GetEncoding(mailclass.MailCharset)); //发送人
mail.Sender =
new MailAddress(mailclass.MailFrom, "", Encoding.GetEncoding(mailclass.MailCharset));
mail.To.Add("xxx@xxx.com"); //发件人
mail.SubjectEncoding = Encoding.GetEncoding(mailclass.MailCharset);
mail.Subject = "报表分析";
mail.BodyEncoding = Encoding.GetEncoding(mailclass.MailCharset);
mail.Priority = MailPriority.Normal; //是否为网页格式
mail.IsBodyHtml = true;
SmtpClient SmtpMail = new SmtpClient(mailclass.MailServer);
SmtpMail.UseDefaultCredentials = true;
SmtpMail.DeliveryMethod = SmtpDeliveryMethod.Network;
SmtpMail.EnableSsl = false; //smtp主机上的端口号,默认是25
SmtpMail.Port = 25; //验证发件人身份
SmtpMail.Credentials =
new NetworkCredential(mailclass.MailUserName, mailclass.MailUserPassword); //邮件的内容可以是一个html文本.
string filePath = AppDomain.CurrentDomain.BaseDirectory + "../../test.html";
System.IO.StreamReader read =
new System.IO.StreamReader(filePath, System.Text.Encoding.GetEncoding("GB2312")); string mailBody = read.ReadToEnd(); //邮件内容
mail.Body = mailBody;
SmtpMail.Send(mail); //释放附件对象,否则文件无法删除
foreach (Attachment item in mail.Attachments)
{
item.Dispose();
}
SmtpMail.Dispose();
} catch (Exception ex)
{
Console.Write(ex.Message);
}
}