C# 通过gmail以外的其他主机发送电子邮件
我目前正在用c#开发一个应用程序,我想从一个名为“smtp.online.nl”的smtp主机发送一封电子邮件。我使用的是485端口(正如我在他们的教程中看到的,如何配置邮件客户端),一切似乎都是正确的 这是我的密码:C# 通过gmail以外的其他主机发送电子邮件,c#,email,smtp,smtpclient,C#,Email,Smtp,Smtpclient,我目前正在用c#开发一个应用程序,我想从一个名为“smtp.online.nl”的smtp主机发送一封电子邮件。我使用的是485端口(正如我在他们的教程中看到的,如何配置邮件客户端),一切似乎都是正确的 这是我的密码: MailMessage message = new MailMessage(); message.To.Add("testEmail@hotmail.com"); message.Subject = "C# generated me
MailMessage message = new MailMessage();
message.To.Add("testEmail@hotmail.com");
message.Subject = "C# generated message!";
message.From = new MailAddress("mySendemailAddress@online.nl");
message.Body = "This is the message body \r\nThis is a next line";
message.DeliveryNotificationOptions=DeliveryNotificationOptions.OnFailure;
SmtpClient smtp = new SmtpClient("smtp.online.nl", 485);
smtp.EnableSsl = true;
smtp.UseDefaultCredentials = false;
smtp.Credentials=new NetworkCredential("mySendEmailAddress@online.nl", "password");
smtp.Send(message);
当我运行此操作时,电子邮件将不会被发送,我得到一个SmtpException:“发送电子邮件时出错”。
我的问题:我的代码有什么问题吗?还有什么其他想法可以解释为什么我会出现这个错误吗?将SMTP端口更改为25(标准SMTP端口)完成了这项工作。感谢Luke Park。像这样的SMTP问题往往与服务器有关,而不是与代码有关。你试过多个用户名吗?例如,使用和不使用@online.nl。您确定服务器使用SSL吗?谢谢您的评论,是的,我在网络凭据中没有@online.nl的情况下尝试过它。关于SSL:教程中说:“选中服务器上显示需要SSL接收电子邮件的复选框”。我在我的代码中启用了一个禁用的选项:很遗憾没有效果。联系提供网络邮件的公司是个好主意吗?您是否尝试过禁用SSL并将端口更改为标准SMTP端口(25)?成功了!谢谢你,伙计!