C#实现异步发送邮件的方法

 更新时间:2015年04月04日 13:15:41   作者:令狐不聪  
这篇文章主要介绍了C#实现异步发送邮件的方法,涉及C#异步操作与邮件发送的技巧,非常具有实用价值,需要的朋友可以参考下

本文实例讲述了C#实现异步发送邮件的方法。分享给大家供大家参考。具体如下:

下面的代码可以实现异步发送邮件,等邮件发送出去后会自动调用回调函数,这样在发送邮件时就不会卡住程序不动了

MailMessage m = new MailMessage
  ("item@jb51.net",
  "raja@jb51.net",
  "This is the subject for the authorized email.",
  "This is the body of the authorized mail!...");
// Send the message using authorization
SmtpClient client = new SmtpClient("smtp.jb51.net");
client.Credentials = new NetworkCredential("user", "password");
client.EnableSsl = true;
// Add the event handler
client.SendCompleted += new SendCompletedEventHandler(mail_SendCompleted);
// Send the message asynchronously
client.SendAsync(m, null);
// To Cancel the send
//client.SendAsyncCancel();
void mail_SendCompleted(object sender, AsyncCompletedEventArgs e)
{
  if (e.Cancelled)
    Console.WriteLine("Message cancelled");
  else if (e.Error != null)
    Console.WriteLine("Error: " + e.Error.ToString());
  else
    Console.WriteLine("Message sent");
}

希望本文所述对大家的C#程序设计有所帮助。

相关文章

最新评论