Breaking News

Editors Picks

Friday, July 6, 2012

How to Send Email from ASP .NET

Introduction
In ASP.NET, sending emails has become simpler. The classes required to send an email are contained in the System.Net.Mail. The steps required to send an email from ASP.NET are as follows: Below is sample code showing how to send email from ASP.Net using C#. With this code send main from Gmail SMTP server you can also configure your own SMTP server to change in web config file.
To configure SMTP configuration data for ASP.NET, you would add the following tags to your web.Config file.
<system.net>
  <mailSettings>
    <smtp from="YourEmailid@gmail.com" deliveryMethod="Network">
      <network host="smtp.gmail.com" port="587"   
               userName="YourEmailid@gmail.com"
               password="yourPassword"/>
    smtp>
  mailSettings>
system.net>    


Here is the Default.aspx page:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Untitled Pagetitle>
    <style type="text/css">
        table.hovertable
        {
            font-family: verdana,arial,sans-serif;
            font-size: 11px;
            color: #333333;
            border-width: 1px;
            border-color: #999999;
            border-collapse: collapse;
        }
        table.hovertable th
        {
            background-color: #c3dde0;
            border-width: 1px;
            padding: 8px;
            border-style: solid;
            border-color: #a9c6c9;
        }
        table.hovertable tr
        {
            background-color: #d4e3e5;
        }
        table.hovertable td
        {
            border-width: 1px;
            padding: 8px;
            border-style: solid;
            border-color: #a9c6c9;
        }
    style>

    <script type="text/javascript">
    function Emailvalidation()
    {
       if (document.getElementById("txtBoxTo").value=="")
       {
         alert('Please Enter Email ID');
         document.getElementById("txtBoxTo").focus();
         return false;
       }
       var emailPat = /^[^@]+@[^@.]+\.[^@]*\w\w$/  ;   
       var emailid=document.getElementById("txtBoxTo").value;
       var matchArray = emailid.match(emailPat);
       if (matchArray == null)
       {          
           alert('Please Enter Correct Email ID');
           document.getElementById("txtBoxTo").focus();            
           return false;
                 
       }
       if (document.getElementById("txtBoxCC").value=="")
       {
         alert('Please Enter Email ID');
         document.getElementById("txtBoxCC").focus();
         return false;
       }
       var emailPat = /^[^@]+@[^@.]+\.[^@]*\w\w$/  ;   
       var emailid=document.getElementById("txtBoxCC").value;
       var matchArray = emailid.match(emailPat);
       if (matchArray == null)
       {          
           alert('Please Enter Correct Email ID');   
           return false;                    
       }
    }
    script>

head>
<body>
    <form id="form1" runat="server">
    <div>
       <table class="hovertable" align="center" width="44%">
         <tr>
<td>
   To
td>
<td>
  <asp:TextBox ID="txtBoxTo" runat="server">asp:TextBox>
td>
         tr>
         <tr>
<td>
  CC
td>
<td>
   <asp:TextBox ID="txtBoxCC" runat="server">asp:TextBox>
td>
        tr>
         <tr>
<td>
   Subject
td>
<td>
   <asp:TextBox ID="txtBoxSubject" runat="server">asp:TextBox>
td>
         tr>
         <tr>
<td>
   Message
td>
<td>
    <asp:TextBox ID="txtareaMessage" runat="server"   TextMode="MultiLine">asp:TextBox>
td>
          tr>
          <tr>
<td>

td>
<td>

td>
         tr>
         <tr>
<td colspan="2" align="center">
  <asp:Button ID="btnSend" runat="server" Text="Send"   OnClientClick="return Emailvalidation()"
  OnClick="btnSend_Click" />
td>
         tr>
         <tr>
<td>

td>
<td>

td>
        tr>
     table>
    div>
    form>
body>
html>


Here is the source code of the Default.aspx.cs page:
using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Net.Mail;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void btnSend_Click(object sender, EventArgs e)
    {
        SmtpClient smtp = new SmtpClient();
        MailMessage msg = new MailMessage();
        smtp.EnableSsl = true;
        msg.IsBodyHtml = true;
        msg.To.Add(new MailAddress(txtBoxTo.Text));
        if (txtBoxCC.Text != "")
            msg.CC.Add(new MailAddress(txtBoxCC.Text));
        msg.Subject = txtBoxSubject.Text;
        msg.Body = txtareaMessage.Text;
        smtp.EnableSsl = true;
        object state = msg;
        smtp.SendCompleted += new  SendCompletedEventHandler(smtpClient_SendCompleted);
        smtp.Send(msg);
        fnAlert("Email Sent Successfully.");
    }

    private static void smtpClient_SendCompleted(object sender, System.ComponentModel.AsyncCompletedEventArgs e)
    {
        MailMessage mail = e.UserState as MailMessage;
        if (!e.Cancelled && e.Error != null)
        { }
        else
        { }
    }
   
}


Conclusion:

In this article, we explored how easy it is to send Email’s using the classes in System.Net.Mail. This approach of sending mails will remain the same for web as well as windows application.

Downloads
You can download the complete source code in  C# .

No comments :

Post a Comment

Contact Us

Name

Email *

Message *