C#发送邮件

用C#写的一个发送邮件方法。

/// <summary>
/// 发送邮件给相关人
/// </summary>
/// <param name="sendToList">收件人列表</param>
/// <param name="attachment">附件</param>
/// <param name="subject">邮件主题</param>
/// <param name="mailBody">邮件内容</param>
public void SendEmailByJoeleo(string sendToList, string attachment, string subject, string mailBody)
{
MailMessage mail = new MailMessage();
sendToList = sendToList.Trim().TrimEnd(';');
if (sendToList.Length == 0)
{
throw new Exception("程序没有获取到文件的收件人列表,请检查是否没有设置!");
}
mail.From = new MailAddress("dream21through@163.com");
foreach (string to in sendToList.Split(';'))
{
mail.To.Add(to);
}
mail.IsBodyHtml = false;
mail.Subject = subject;
mail.Body = mailBody;
mail.SubjectEncoding = Encoding.GetEncoding("gb2312");
mail.BodyEncoding = Encoding.GetEncoding("gb2312");
if (attachment.Length > 0)
{
mail.Body = mailBody + "\n\r随邮件带附件:" + attachment;
if (File.Exists(attachment))
{
Attachment mailAttach = new Attachment(attachment);
mail.Attachments.Add(mailAttach);
}
}
SmtpClient smtp = new SmtpClient("smtp.163.com");
smtp.Credentials = new System.Net.NetworkCredential("dream21through@163.com", "xxxxxx");
smtp.Send(mail);
mail.Dispose();
}

 

posted @ 2011-12-09 10:21  joeleo  阅读(986)  评论(0编辑  收藏  举报