0
当我们的应用程序发生任何错误时,我有如下的方法来发送电子邮件。 [是。通过邮件发送错误是一个单独的讨论]异步发送邮件
public void EmailErrorDetails()
{
string strBodyMessage = string.Empty;
strBodyMessage = GetEmailBodyMessage();
if (strBodyMessage != String.Empty)
{
MailMessage emailMessage = new MailMessage();
emailMessage.From = new MailAddress(Constants.MailFrom);
emailMessage.To.Add(Constants.MailTo);
emailMessage.Subject = Constants.EmailSubject;
emailMessage.IsBodyHtml = true;
emailMessage.Body = string.Format(strBodyMessage);
SmtpClient client = new SmtpClient();
client.UseDefaultCredentials = false;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.EnableSsl = true;
client.Host = Constants.EmailHostAddress;
client.Port = Convert.ToInt32(Constants.EmailPort);
client.Credentials = new NetworkCredential(Constants.MailFrom, Constants.MailFromPassword);
client.Send(emailMessage);
}
}
我想让这个方法在后台异步运行,并执行前进。
我读到[client.Send]本身使用异步调用。那么是否有任何好处使上述方法调用异步方式,如果是的话我怎么能实现这一点?
yes..client.'SendAsync(emailMessage);'..是一种方式..但是有更多的好处。如果我使用委托使用异步方法调用? – James
@詹姆斯“*有更多的好处*” - 究竟是什么?你不清楚你想知道什么。 – James
你刚刚打败了我,@詹姆斯。 +1说我要说什么。 –