Overview :
The task of sending emails has become much easier in ASP.NET. In previous versions of ASP we either used a third party component or the limited functionality of CDONTS component for sending emails. The .NET framework provides simpler but powerful class libraries for sending emails. These classes are in the System.Web.Mail Namespace. Following table lists the classes and their use :
| Class |
Purpose |
| MailAttachment |
To construct an email attachment. |
| MailMessage |
To construct an email message. |
| SmtpMail |
To send an email attachment using the SMTP mail service. |
If you are looking for a production ready, stable, easy to use ASP.NET Newsletter application, then look no further:
Faisal Khan (of Stardeveloper.com) has created a great Newsletter Application for you to download and start using today. It is easy to install, lets your users subscribe using a subscription form, provides a simple administration interface to create and send newsletters, handles the task of sending newsletters in the background using thread queues on the server, and lets users unsubscribe if they wish so.
In order to access these classes we have to import the System.Web.Mail namespace within our ASP.NET page using the import directive as shown below :
<% @ Import NameSpace = "System.Web.Mail" %>
Then we construct an email message by creating an Instance of the MailMessage class as shown below :
MailMessage MyMail = new MailMessage();
The MailMessage class has various properties which need to be set before sending emails. Following table shows some of the important properties of the MailMessage class :
| Property |
Description |
| Attachments |
List of attachments that is sent with the email. |
| Body |
Body of the email message. |
| From |
Email address of the sender. |
| Subject |
Subject line of the email message. |
| To |
Email address of the recipient. |
To send an attachment with email we need to create an instance of the MailAttachment class. We pass the full path of the file to be attached as an argument to the constructor of MailAttachment class as shown below :
MailAttachment MyAttachment = new MailAttachment("C:\\My Folder\\MyFile.txt");
Note : The file name passed should be valid file which exists on the server.
This MailAttachment instance is then attached to the mail by using the Attachment property of the Mail class as shown below :
MyMail.Attachments.Add(MyAttachment);
Finally we send the email using the Send() method of the SmtpMail Class as shown below :
SmtpMail.Send(MyMail);