I'm trying to send email with my website's address from a C# application.
This worked fine for several months until recently. (maybe my provider changes some things or someone else changed settings)
Here's the code:
private void sendEmail(Email invite) { MailMessage mail = new MailMessage(); SmtpClient SmtpServer = new SmtpClient(smtpServerName); mail.From = new MailAddress(emailUsername); mail.To.Add(invite.RecipientEmail); mail.Subject = invite.MessageSubject; mail.Body = invite.MessageBody; SmtpServer.UseDefaultCredentials = false; SmtpServer.Port = 587; SmtpServer.Credentials = new System.Net.NetworkCredential(emailUsername, emailPassword); // SmtpServer.EnableSsl = true; SmtpServer.Send(mail); }
Here's the error:
The SMTP server requires a secure connection or the client was not authenticated. The server response was: SMTP authentication is required.
Looking at other questions I tried what they suggested, to make SmtpServer.EnableSsl = true
. This didn't work at all. It gave the following:
System.Net.Mail.SmtpException: Server does not support secure connections.
I'm guessing I should disable SSL and have it the way it was before.
Any suggestions how to make email sending work again?
EDIT
I've tried without SmtpServer.UseDefaultCredentials = false;
I've tried with it set to true: SmtpServer.UseDefaultCredentials =true;
I've tried commenting that line along with the following //SmtpServer.Credentials = new System.Net.NetworkCredential(emailUsername, emailPassword);