首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >异步发送邮件

异步发送邮件
EN

Stack Overflow用户
提问于 2013-06-20 14:05:12
回答 1查看 101关注 0票数 0

我有如下方法发送电子邮件,当任何错误发生在我们的应用程序。是。通过邮件发送错误是一个单独的讨论。

代码语言:javascript
复制
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本身使用异步调用。因此,让上述方法调用异步方式有什么好处吗?如果是,我如何实现这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-20 14:10:04

我读到client.Send使用异步调用

假设client实际上是SmtpClient,那么Send 不使用异步调用。SmtpClient有一种用于异步发送电子邮件的特定方法,称为SendAsync --如果您想在后台发送电子邮件,请使用此方法而不是Send

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17215761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档