【发布时间】:2022-01-27 13:51:16
【问题描述】:
我正在使用带有 office365 邮件服务器的 SmtpClient 来发送电子邮件。但是每次我尝试 smtpclient.Send(msg) 时,它都会抛出 'Operation has timed out' smtpexception。我已经尝试了所有早期的选项,比如将端口更改为 587 并增加超时值,但没有任何效果。谁能帮我吗。下面是我的源代码。
using (MailMessage msg = new MailMessage
{
From = new MailAddress("Sender@ourdomain.com"),
Subject = this.Subject,
Body = this.Body,
IsBodyHtml = true
})
{
msg.To.Add(new MailAddress("Receiver@ourdomain.com"));
using (SmtpClient client = new SmtpClient
{
Host = "smtp.office365.com",
DeliveryMethod = SmtpDeliveryMethod.Network,
EnableSsl = true,
UseDefaultCredentials = false,
Credentials = new System.Net.NetworkCredential("username", "password"),
Port = 587
})
{
try
{
client.TargetName = "STARTTLS/smtp.office365.com";
client.Send(msg);
}
catch (Exception)
{
throw;
}
}
}
【问题讨论】:
-
你试过这种方式吗? stackoverflow.com/a/61093253/14973743
-
@AnandSowmithiran 是的.. 还是一样的问题 ...
-
@KrishD 请发布您遇到的异常的堆栈跟踪。
-
@RahulSharma System.Net.Mail.SmtpException:操作已超时。在 System.Net.Mail.SmtpClient.Send(MailMessage 消息)
标签: c# office365api smtpclient