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