Introduction
There are many more articles on Google for sending an email using ASP.NET and C#. This article explains some important functions and notable errors.
Code
- using System.IO;
- using System.Net;
- using System.Net.Mail;
-
-
- string to = "[email protected]";
- string from = "[email protected]";
- MailMessage message = new MailMessage(from, to);
-
- string mailbody = "In this article you will learn how to send a email using Asp.Net & C#";
- message.Subject = "Sending Email Using Asp.Net & C#";
- message.Body = mailbody;
- message.BodyEncoding = Encoding.UTF8;
- message.IsBodyHtml = true;
- SmtpClient client = new SmtpClient("smtp.gmail.com", 587);
- System.Net.NetworkCredential basicCredential1 = new
- System.Net.NetworkCredential("yourmail id", "Password");
- client.EnableSsl = true;
- client.UseDefaultCredentials = false;
- client.Credentials = basicCredential1;
- try
- {
- client.Send(message);
- }
-
- catch (Exception ex)
- {
- throw ex;
- }
We must add the following namespace:
- using System.Net;
- using System.Net.Mail;
Simple Mail Transfer Protocol (SMTP)
Simple Mail Transfer Protocol (SMTP) is a TCP/IP protocol used in sending and receiving e-mail. Most e-mail systems that send mail over the Internet use SMTP to send messages from one server to another. The messages can then be retrieved with an e-mail client using either POP or IMAP.
The following is a list of SMTP Server and Port Numbers:
Sl.No |
Mail Server |
SMTP Server( Host ) |
Port Number |
1 |
Gmail |
smtp.gmail.com |
587 |
2 |
Outlook |
smtp.live.com |
587 |
3 |
Yahoo Mail |
smtp.mail.yahoo.com |
465 |
4 |
Yahoo Mail Plus |
plus.smtp.mail.yahoo.com |
465 |
5 |
Hotmail |
smtp.live.com |
465 |
6 |
Office365.com |
smtp.office365.com |
587 |
7 |
zoho Mail |
smtp.zoho.com |
465 |
Important SMTP Class Properties:
- Host: Server URL for SMTP (check the preceding table).
- EnableSsl: Check your host accepts SSL Connections (True or False).
- Port: Port Number of the SMTP server (check the preceding table).
- Credentials: Valid login credentials for the SMTP server (the email address and password).
- UseDefaultCredentials: When we set to True in UseDefaultCredentials then that specifies to allow authentication based on the credentials of the account used to send emails.
Common Error
The following error will occur commonly for everyone. How to solve this? Check my previous blog contents.
Tech Blog Reference
Summary
We learned how to send emails using ASP.NET and C#. I hope this article is useful for all .NET beginners.