Send Email from your GMAIL account using ASP.Net and C#

Send email using Gmail account

Download Sample

You can use your gmail account to send emails from ASP.Net and C#, using SMTP. You need to set SSL credentials. This is not straight forward like a simple SMTP email. After searching for long hours I was able to find a solution. Use following class to send emails using your GMAIL account.

Please supply your gmail user name and password in following class where needed.

using System.Web.Mail;
using System;
public class MailSender
{
 public static bool SendEmail(
 string pGmailEmail, 
 string pGmailPassword, 
 string pTo, 
 string pSubject,
 string pBody, 
 System.Web.Mail.MailFormat pFormat,
 string pAttachmentPath)
 {
 try
 {
 System.Web.Mail.MailMessage myMail = new System.Web.Mail.MailMessage();
 myMail.Fields.Add
 ("http://schemas.microsoft.com/cdo/configuration/smtpserver",
 "smtp.gmail.com");
 myMail.Fields.Add
 ("http://schemas.microsoft.com/cdo/configuration/smtpserverport",
 "465");
 myMail.Fields.Add
 ("http://schemas.microsoft.com/cdo/configuration/sendusing",
 "2");
 //sendusing: cdoSendUsingPort, value 2, for sending the message using 
 //the network.

 //smtpauthenticate: Specifies the mechanism used when authenticating 
 //to an SMTP 
 //service over the network. Possible values are:
 //- cdoAnonymous, value 0. Do not authenticate.
 //- cdoBasic, value 1. Use basic clear-text authentication. 
 //When using this option you have to provide the user name and password 
 //through the sendusername and sendpassword fields.
 //- cdoNTLM, value 2. The current process security context is used to 
 // authenticate with the service.
 myMail.Fields.Add
 ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate","1");
 //Use 0 for anonymous
 myMail.Fields.Add
 ("http://schemas.microsoft.com/cdo/configuration/sendusername",
 pGmailEmail);
 myMail.Fields.Add
 ("http://schemas.microsoft.com/cdo/configuration/sendpassword",
 pGmailPassword);
 myMail.Fields.Add
 ("http://schemas.microsoft.com/cdo/configuration/smtpusessl",
 "true");
 myMail.From = pGmailEmail;
 myMail.To = pTo;
 myMail.Subject = pSubject;
 myMail.BodyFormat = pFormat;
 myMail.Body = pBody;
 if (pAttachmentPath.Trim() != "")
 {
 MailAttachment MyAttachment = 
 new MailAttachment(pAttachmentPath);
 myMail.Attachments.Add(MyAttachment);
 myMail.Priority = System.Web.Mail.MailPriority.High;
 }

 System.Web.Mail.SmtpMail.SmtpServer = "smtp.gmail.com:465";
 System.Web.Mail.SmtpMail.Send(myMail);
 return true;
 }
 catch (Exception ex)
 {
 throw;
 }
}
}



Example usage of this class,

EmailLib.SendEmail.SendEmail("your_gmail_id", 
                             "your_gmail_password", 
                             "to_email @ anydomain.com", 
                             "This is email subject" , 
                             "This is email body", 
                             Web.Mail.MailFormat.Text, 
                             "Physical path to your Attachment")


Note: If you do not want to attach a file with email, supply blank string as "".

Comments/Questions

Previous Questions Log

Hi Shabdar,

I am new to ASP.Net developement and I want to use my gmail account when sending password retrieval emails. I think the standard controls that visual web developer 2008 provide are really neat but I cant get the app to send the mail via gmail's SMTP.

How should i use your code in such a way that will allow me to send the mails that the controls generate via gmails smtp?
=> Gavin Lumsden (Sunday 20-Apr-08 08:38 AM)
Reply
Hi Shabdar,

I want to send email using my gmail account from my laptop. It is connected to the internet, but there is no SMTP service running on it. My question is:
Do i need SMTP service to be running on my laptop to be able to use your code to send email (via gmail account) ?
=> vivek (Tuesday 06-May-08 09:05 AM)
Reply
No, you don't need SMTP service running on your laptop/computer/server.
=> Shabdar (Tuesday 06-May-08 12:18 PM)
Reply
this was a fantastic article, it worked for me on the first try, however with VS 2008 it tells me some of the items are obsolete (works just find nonetheless)
=> jeff siegel (Saturday 10-May-08 12:39 AM)
Reply
You'have just solved me a problem of 2 days - thank you! where did you find this solution??
=> inna (Monday 19-May-08 12:33 PM)
Reply
Nice coding....
=> sammy (Thursday 07-Aug-08 05:04 AM)
Reply
Marvelous code
i got what i was looking for, thanks you are a gem
=> Gurpreet Singh (Friday 22-Aug-08 07:09 AM)
Reply
Hey,, Its a Gr8 code 4 me to handle email sending..

can u gv me idea how to send email from other than gmail.
or any email domain i can use to send email instead of inly using gmail.

Thanks in advance.
=> Praful (Friday 05-Sep-08 01:01 AM)
Reply
Hi i am tring to use this code in my hosting server.And it gives me "Mail sent successfully." but i am not recived the mail. Can you please help me out onthis.
ManiVannan.M
=> LiveMyResume (Tuesday 09-Sep-08 03:21 AM)
Reply
I downloaded your code project but when i click the send button i get a message "The transport failed to connect to the server" . plz suggest
=> surajit (Tuesday 16-Sep-08 02:43 AM)
Reply
when i trued ur code it is shiwing this error

"The transport failed to connect to the server"

kindly give me a solution for this problem

regards

revathy
=> Revathy (Wednesday 17-Sep-08 05:08 AM)
Reply
go to run>command prompt

and type : telnet smtp.gmail.com 465
if it fails then ur service provider is prohibiting the
use of of gmail.it might be the case i m not all that sure
but it might be the case.
=> surajit (Thursday 18-Sep-08 02:23 AM)
Reply
when i tried ur code it is showing this error

"The transport failed to connect to the server"

kindly give me a solution for this problem

regards

revathy
=> Revathy (Wednesday 17-Sep-08 05:11 AM)
Reply
please check ur internet connection.
=> abhi (Monday 01-Dec-08 08:46 AM)
Reply
Good article to send mails using gmailaccount.
goodjob . .
u
Thanks
Sudhir.M
=> sudhir malireddy (Thursday 25-Sep-08 12:57 AM)
Reply
This application is really good. Its works fine.
=> Chandrajit Samanta (Friday 24-Oct-08 03:59 AM)
Reply
I made on a framework 2.0 and it works perfectly... but i have an application in framework 1.0 unfortunally doesnt work... any idea?
=> Paulo Pil√£o (Wednesday 12-Nov-08 07:57 PM)
Reply
hi.,
we r creating a fresh project in asp.net with c#..,In that Project we have a one module for sending mail options.. help me
=> Ashik (Tuesday 18-Nov-08 05:10 AM)
Reply
Hi Shabdar,
It's really nice explanation given by you.... Thanks a lot. ..It really works well. Hope to see such excellent and simple code again....
You have really made our work very easy....It am reffering this site to my friends...
=> Ajay Kewale (Sunday 23-Nov-08 06:58 PM)
Reply
how to use yahoo mail server for send email?
=> abhi (Monday 01-Dec-08 08:45 AM)
Reply

Posted: 2 years 9 months ago by martinabinaford #259
martinabinaford's Avatar
hi tom i shouldnt give it out but i think this is the contact
and details, they have 20% discount now, mention marts recommened you
Posted: 3 years 3 months ago by dellmerca #198
dellmerca's Avatar
Here you can find sending email from asp.net from C# and vb.net

http://asp.net-informations.com/communications/asp-email.htm

merca.
Posted: 3 years 9 months ago by tjaank #112
tjaank's Avatar
you can contact me here:
http://www.codeshode.com/p/contact.html
Posted: 3 years 9 months ago by Awon #110
Awon's Avatar
Hello There

I come to know you about Sending Email using Asp.net-2(vb).

I have a url which can help you.

Click Here : http://www.raiseitsolutions.com/forum/viewtopic.php?f=4&t=14&sid=01f138a76b33beaaab9aa6f7722b115a

I hope it is enough for you.

Thank You

AWON
Posted: 3 years 9 months ago by michaelD #108
michaelD's Avatar
Hello,

This exactly what I am looking for.....is it possible to speak directly with you?

Thanks
Posted: 3 years 10 months ago by tjaank #106
tjaank's Avatar
check these for more understanding:

http://www.codeshode.com/2011/07/send-bulk-emails-using-c-vbnet-in.html
http://www.codeshode.com/2010/06/send-email-with-attachment-in-aspnet.html
http://www.codeshode.com/2010/06/send-email-using-gmail-in-aspnet.html