异步发送邮件C#代码

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

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

MailMessage m = new MailMessage
   ("item@sharejs.com",
    "raja@sharejs.com",
    "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.sharejs.com");
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");
}