To send email using gmail in asp.net, write this code in click event of button
C# code
protected void Button1_Click(object sender, EventArgs e) { MailMessage mail = new MailMessage(); mail.To.Add("jainamit.agra@gmail.com"); mail.To.Add("amit_jain_online@yahoo.com"); mail.From = new MailAddress("jainamit.agra@gmail.com"); mail.Subject = "Email using Gmail"; string Body = "Hi, this mail is to test sending mail"+ "using Gmail in ASP.NET"; mail.Body = Body; mail.IsBodyHtml = true; SmtpClient smtp = new SmtpClient(); smtp.Host = "smtp.gmail.com"; //Or Your SMTP Server Address smtp.Credentials = new System.Net.NetworkCredential ("YourUserName@gmail.com","YourGmailPassword"); //Or your Smtp Email ID and Password smtp.EnableSsl = true; smtp.Send(mail); } VB.NET code
Imports System.Net.Mail Protected Sub Button1_Click (ByVal sender As Object, ByVal e As EventArgs) Dim mail As MailMessage = New MailMessage() mail.To.Add("jainamit.agra@gmail.com") mail.To.Add("amit_jain_online@yahoo.com") mail.From = New MailAddress("jainamit.agra@gmail.com") mail.Subject = "Email using Gmail" String Body = "Hi, this mail is to test sending mail"+ "using Gmail in ASP.NET" mail.Body = Body mail.IsBodyHtml = True Dim smtp As SmtpClient = New SmtpClient() smtp.Host = "smtp.gmail.com" //Or Your SMTP Server Address smtp.Credentials = New System.Net.NetworkCredential ("YourUserName@gmail.com","YourGmailPassword") smtp.EnableSsl = True smtp.Send(mail) End Sub You also need to enable POP by going to settings > Forwarding and POP in your gmail account
Change YourUserName@gmail.com to your gmail ID and YourGmailPassword to Your password for Gmail account and test the code.
If your are getting error mentioned below "The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required."
than you need to check your Gmail username and password.
If you are behind proxy Server then you need to write below mentioned code in your web.config file
<system.net> <defaultProxy> <proxy proxyaddress="YourProxyIpAddress"/> defaultProxy> > If you are still having problems them try changing port number to 587
smtp.Host = "smtp.gmail.com,587";
If you still having problems then try changing code as mentioned below
SmtpClient smtp = new SmtpClient(); smtp.Host = "smtp.gmail.com"; smtp.Port = 587; smtp.UseDefaultCredentials = False; smtp.Credentials = new System.Net.NetworkCredential ("YourUserName@gmail.com","YourGmailPassword"); smtp.EnableSsl = true; smtp.Send(mail); This will definitely helps you. Labels: ASP.Net, Gmail, Send Mail |