I have been trying for 2 days to get my ASP.NET webforms application to send an e-mail.
I have tried this using both outlook and gmail. I got the smtp information for both from this tutorial:
When I try using port 587 in the example below I get an error saying: An exception of type 'System.Net.Mail.SmtpException' occurred in System.dll but was not handled in user code Additional information: The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required.
When I try using port 465 in the example below: My application just hangs forever and my page never gets back my email function which is in the PageLoad.
A couple of things to note just incase one of these is messing me up:
- I am using a standard VS2013 dev environment (running my web app in debug mode using F5)
- I am using the same e-mail address for from, to, and gmail login credentials)
- My ISP does not block these ports. (comcast cable)
I even went to the google DisplayUnlockCaptcha page to Allow access to my account
protected void SendEmail() { string EmailAddress = "myemail@gmail.com"; using (MailMessage mailMessage = new MailMessage(EmailAddress, EmailAddress)) { mailMessage.Subject = "This is a test email"; mailMessage.Body = "This is a test email. Please reply if you receive it."; SmtpClient smtpClient = new SmtpClient(); smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network; smtpClient.EnableSsl = true; smtpClient.Host = "smtp.gmail.com"; smtpClient.Port = 587; smtpClient.Credentials = new System.Net.NetworkCredential() { UserName = EmailAddress, Password = "password" }; smtpClient.UseDefaultCredentials = false; smtpClient.Send(mailMessage); } }