Click here to Skip to main content
12,885,022 members (30,120 online)
Click here to Skip to main content
Add your own
alternative version


36 bookmarked
Posted 23 Apr 2012

Send Mail / Contact Form using ASP.NET and C#

, 23 Apr 2012 CPOL
Rate this:
Please Sign up or sign in to vote.
this is the send mail or contact form in c#


For sending mail through ASP.NET and C# website:


This code is tested and running well on gmail account.

Using the code


The code below defines the HTML code of the control:

<%this is the client side code for the design and display%>
<asp:Panel ID="Panel1" runat="server" DefaultButton="btnSubmit">
        Please Fill the Following to Send Mail.</p>
        Your name:
        <asp:RequiredFieldValidator ID="RequiredFieldValidator11" runat="server" ErrorMessage="*"

            ControlToValidate="YourName" ValidationGroup="save" /><br />
        <asp:TextBox ID="YourName" runat="server" Width="250px" /><br />
        Your email address:
        <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="*"

            ControlToValidate="YourEmail" ValidationGroup="save" /><br />
        <asp:TextBox ID="YourEmail" runat="server" Width="250px" />
        <asp:RegularExpressionValidator runat="server" ID="RegularExpressionValidator23"

            SetFocusOnError="true" Text="Example:" ControlToValidate="YourEmail"

            ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" Display="Dynamic"

            ValidationGroup="save" /><br />
        <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErrorMessage="*"

            ControlToValidate="YourSubject" ValidationGroup="save" /><br />
        <asp:TextBox ID="YourSubject" runat="server" Width="400px" /><br />
        Your Question:
        <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ErrorMessage="*"

            ControlToValidate="Comments" ValidationGroup="save" /><br />
        <asp:TextBox ID="Comments" runat="server" 

                TextMode="MultiLine" Rows="10" Width="400px" />
        <asp:Button ID="btnSubmit" runat="server" Text="Send" 

                    OnClick="Button1_Click" ValidationGroup="save" />
    <asp:Label ID="DisplayMessage" runat="server" Visible="false" />

The server side code:

protected void SendMail()
    // Gmail Address from where you send the mail
    var fromAddress = "";
    // any address where the email will be sending
    var toAddress = YourEmail.Text.ToString(); 
    //Password of your gmail address
    const string fromPassword = "Password";
     // Passing the values and make a email formate to display
    string subject = YourSubject.Text.ToString();
    string body = "From: " + YourName.Text + "\n";
    body += "Email: " + YourEmail.Text + "\n";
    body += "Subject: " + YourSubject.Text + "\n";
    body += "Question: \n" + Comments.Text + "\n";
    // smtp settings
    var smtp = new System.Net.Mail.SmtpClient();
        smtp.Host = "";
        smtp.Port = 587;
        smtp.EnableSsl = true;
        smtp.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
        smtp.Credentials = new NetworkCredential(fromAddress, fromPassword);
        smtp.Timeout = 20000;
    // Passing values to smtp object
    smtp.Send(fromAddress, toAddress, subject, body);

protected void Button1_Click(object sender, EventArgs e)
        //here on button click what will done 
        DisplayMessage.Text = "Your Comments after sending the mail";
        DisplayMessage.Visible = true;
        YourSubject.Text = "";
        YourEmail.Text = "";
        YourName.Text = "";
        Comments.Text = "";
    catch (Exception) { }

The above code has the validation checks also.

This code is based on the 3.5 framework and also works in the 4.0 framework.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Muhammad Kashif Saeed
Software Developer (Senior) Web Technology Solution
Pakistan Pakistan
No Biography provided

You may also be interested in...


Comments and Discussions

AnswerRe: Its working.................... Pin
Muhammad Kashif Saeed15-Jun-13 9:34
memberMuhammad Kashif Saeed15-Jun-13 9:34 
QuestionA couple of issues Pin
_groo_26-Mar-13 4:42
member_groo_26-Mar-13 4:42 
AnswerRe: A couple of issues Pin
Muhammad Kashif Saeed15-Jun-13 9:37
memberMuhammad Kashif Saeed15-Jun-13 9:37 
QuestionHi Pin
Anil Srivastava8-Mar-13 4:15
memberAnil Srivastava8-Mar-13 4:15 
AnswerRe: Hi Pin
Muhammad Kashif Saeed15-Jun-13 9:38
memberMuhammad Kashif Saeed15-Jun-13 9:38 
Questionnamespace error Pin
jaydip10898-Mar-13 0:18
groupjaydip10898-Mar-13 0:18 
AnswerRe: namespace error Pin
Muhammad Kashif Saeed15-Jun-13 9:39
memberMuhammad Kashif Saeed15-Jun-13 9:39 
QuestionYourName&#39; does not exist Pin
Johann Taljaard3-Mar-13 21:01
memberJohann Taljaard3-Mar-13 21:01 
To test, I ran your file as it is and got the following errors:

Error 3 The name 'YourName' does not exist in the current context ~\ContactUs\Controls\ContactControl.ascx.cs 23 34 Project2

What am I doing wrong? Cry | :((
AnswerRe: YourName' does not exist Pin
Muhammad Kashif Saeed15-Jun-13 9:42
memberMuhammad Kashif Saeed15-Jun-13 9:42 
Questionthank you Pin
vinitha_studies3-Mar-13 4:20
membervinitha_studies3-Mar-13 4:20 
AnswerRe: thank you Pin
Muhammad Kashif Saeed15-Jun-13 9:43
memberMuhammad Kashif Saeed15-Jun-13 9:43 
GeneralThnk You so Much :) Pin
prashantniku9-Feb-13 0:59
memberprashantniku9-Feb-13 0:59 
GeneralRe: Thnk You so Much :) Pin
Muhammad Kashif Saeed15-Jun-13 9:29
memberMuhammad Kashif Saeed15-Jun-13 9:29 
Questionthanks Pin
SatheeshK78727-Jan-13 21:37
memberSatheeshK78727-Jan-13 21:37 
AnswerRe: thanks Pin
Muhammad Kashif Saeed15-Jun-13 9:43
memberMuhammad Kashif Saeed15-Jun-13 9:43 
QuestionThis code is not working Pin
sabaaqeel26-Dec-12 1:55
membersabaaqeel26-Dec-12 1:55 
AnswerRe: This code is not working Pin
Muhammad Kashif Saeed15-Jun-13 9:45
memberMuhammad Kashif Saeed15-Jun-13 9:45 
AnswerThis will help Pin
sabaaqeel7-Apr-14 4:05
membersabaaqeel7-Apr-14 4:05 
Generalthanks Pin
abhishek kr singh1114-Dec-12 7:42
memberabhishek kr singh1114-Dec-12 7:42 
GeneralRe: thanks Pin
Muhammad Kashif Saeed14-Dec-12 23:10
memberMuhammad Kashif Saeed14-Dec-12 23:10 
GeneralMy vote of 5 Pin
BlackThorn133710-Dec-12 9:17
memberBlackThorn133710-Dec-12 9:17 
QuestionI want mail when i was sent mail Pin
Manoj Maske5-Nov-12 1:10
memberManoj Maske5-Nov-12 1:10 
QuestionThe operation has timed out Pin
Sthembiso Mtyongwe23-Oct-12 23:29
memberSthembiso Mtyongwe23-Oct-12 23:29 
AnswerRe: The operation has timed out Pin
vcampos200024-Dec-14 5:36
membervcampos200024-Dec-14 5:36 
Questionsmtp mail Pin
Jaiswal Ashok18-Sep-12 2:23
memberJaiswal Ashok18-Sep-12 2:23 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.170424.1 | Last Updated 23 Apr 2012
Article Copyright 2012 by Muhammad Kashif Saeed
Everything else Copyright © CodeProject, 1999-2017
Layout: fixed | fluid