使用Office 365联机Exchange从ASP.NET发送电子邮件

时间:2018-12-28 23:45:06

标签: asp.net email smtpclient

尝试从asp.net应用程序发送电子邮件。 通过电子邮件发送到服务器地址:Smtp.office365.com
端口-587
连接安全性-STARTTLS
我有SMTP用户名和SMTP密码。

无法发送电子邮件。

代码使用SmtpClient,如下所示:

String userName = "name@example.com";
String password = "Password";

MailAddress RecipientEmail = new MailAddress(EmailTo);
MailAddress SenderEmail = new MailAddress(cEmailFrom);
MailMessage msg = new MailMessage(SenderEmail, RecipientEmail);
msg.Subject = "Test";
msg.Body = "This is a test";
msg.IsBodyHtml = true;
SmtpClient client = new SmtpClient("smtp.office365.com:587");
client.Credentials = new System.Net.NetworkCredential(userName, password);
client.EnableSsl = true;
client.Send(msg);

错误消息:无法发送电子邮件。没有其他信息。

但是如果我指定端口:     client.port = 587 而不是将其添加到主机名中,我得到了一个很长的错误:

交易失败。服务器响应为:5.2.0  STOREDRV.Submission.Exception:SendAsDeniedException.MapiExceptionSendAsDenied;由于消息“无法提交消息”的永久性异常,无法处理消息。 16.55847:BC110000、17.43559:0000000094000000000000000100000000000000、20.52176:140FBF85130010100A00D231、20.50032:140FBF85831710100A00E231、0.35180:86260000、255.23226:0A00C931、255.27962:0A000000、255.27962:0E000000,20.0052500:140051000:15005400:150054000:1500 140FBF8583171010A4260000、0.35180:0A00D330、255.23226:A9260000、255.27962:0A000000、255.27962:32000000、255.17082:DC040000、0.27745:B3260000、4.21921:DC040000、255.27962:FA000000、255.1494:0A007530、0.37692:02010480、0.402:00 0.34608:04000100、0.55056:00000000、0.42768:302E3134、0.56112:31393A44、0.52807:30363031、4.33016:DC040000、7.40748:010000000000010B2D343438、7.57132:000000000000000037323032,

缺少什么?

1 个答案:

答案 0 :(得分:1)

该错误的重要部分是短语“ SendAsDenied”。

Office 365不允许您在其smtp服务器上使用您的帐户从其他人的地址发送电子邮件。 您只是做不到。如果您需要这样做,则需要管理自己的smtp服务器...让我告诉您,这是另一种蠕虫病毒,需要具备以下功能:了解并配置rDNS,SPF,DKIM,域密钥和DMARC的部分或全部。