无法使用C#发送带有Outlook SMTP的邮件

问题描述:

我试图从我的C#应用​​程序发送电子邮件。我正在使用SmtpClient类和Outlook SMTP服务器来执行此操作。无法使用C#发送带有Outlook SMTP的邮件

这里是我的代码:

static void Main(string[] args) 
{ 
    string _sender = "[email protected]"; 
    string _password = "myTestPassword"; 

    SmtpClient client = new SmtpClient("smtp-mail.outlook.com"); 

    client.Port = 587; 
    client.DeliveryMethod = SmtpDeliveryMethod.Network; 
    client.UseDefaultCredentials = false; 
    System.Net.NetworkCredential credentials = 
     new System.Net.NetworkCredential(_sender, _password); 
    client.EnableSsl = true; 
    client.Credentials = credentials; 

    MailMessage message = new MailMessage(_sender, "testToMail.com"); 
    message.Subject = "new subj"; 
    message.Body = "new body"; 
    client.Send(message); 
} 

我的代码成功运行没有抛出任何异常。

问题是,电子邮件没有传送给收件人。当我打开发件人邮件的收件箱时,它说邮件无法发送,因为它触发了垃圾邮件过滤器。

Screenshot of the Failed Mail

我认为这与没有被发送到SMTP客户端类的任何参数,或者说,我需要在发送者的邮件配置任何安全设置做。

任何建议都会有很大的帮助!

+0

是''testToMail.com“'一个有效的收件人地址? – oerkelens

+0

是的。发件人和发件人地址,密码有效。 –

+0

也许“新主题”看起来像生成的垃圾邮件主题?试着在那里放些更有意义的东西,或许还有一点点时间呢?谁知道那些垃圾过滤器被视为垃圾?我想,任何看起来会产生的东西都是合格的。 – oerkelens

错误5.4.0表示存在DNS /名称查找问题。在这种情况下,这是因为你试图发送邮件到'testToMail.com'。这个电子邮件地址无效。