相关疑难解决方法(0)

尝试通过Office 365发送电子邮件时SMTP 5.7.57错误

我正在尝试设置一些代码,以通过Office 365经过身份验证的SMTP服务发送电子邮件:

var _mailServer = new SmtpClient();
_mailServer.UseDefaultCredentials = false;
_mailServer.Credentials = new NetworkCredential("test.user@mydomain.com", "password");
_mailServer.Host = "smtp.office365.com";
_mailServer.TargetName = "STARTTLS/smtp.office365.com"; // same behaviour if this lien is removed
_mailServer.Port = 587;
_mailServer.EnableSsl = true;

var eml = new MailMessage();
eml.Sender = new MailAddress("test.user@mydomain.com");
eml.From = eml.Sender;
eml.to = new MailAddress("test.recipient@anotherdomain.com");
eml.Subject = "Test message";
eml.Body = "Test message body";

_mailServer.Send(eml);
Run Code Online (Sandbox Code Playgroud)

这似乎不起作用,我看到一个例外:

SMTP服务器需要安全连接或客户端未经过身份验证.服务器响应是:5.7.57 SMTP; 在System.Net.Mail.SmtpTransport.SendMail(MailAddress发件人,MailAddressCollection收件人,System.Net.Mail.SmtpTransport.SendMail
,System.Net.Mail.MailCommand.Send(SmtpConnection conn,Byte []命令,来自)的MAIL FROM期间,客户端未通过身份验证发送匿名邮件
,
System.Net.Mail.SmtpClient.Send(MailMessage消息)中的字符串传递Notify,SmtpFailedRecipientException和exception )

我已经尝试启用网络跟踪,似乎建立了安全通信(例如,我在日志中看到"STARTTLS"命令的一行,后来日志中有一行"远程证书被验证为有效用户.",以下Send() …

c# email smtp smtpclient office365

8
推荐指数
2
解决办法
3万
查看次数

标签 统计

c# ×1

email ×1

office365 ×1

smtp ×1

smtpclient ×1