Email: Password:       Forgot Password 
    .netCodeSG
A Saarsha Group Online Community for dot net codes group like C#, Asp.NET, VB.NET, Sharepoint, JavaScript, JQuery, Ajax, SQL, WCF, WPF.
 
TECHNOLOGIES:
 

Send Email in ASP.Net with attached file

Article:
Viewed:  1350 
Posted On:  19/07/2012 08:23:52 
One of the most common functionalities used in Web development is sending email from a Web page. The .NET framework makes the task of sending email from a Web page easy and in this article I’ll show you how to send email with attachment file. 

One of the most common functionalities used in Web development is sending email from a Web page.

The .NET framework makes the task of sending email from a Web page easier and in this article, I'll show you "how to send email with attachment file".


This is the aspx code:

<%
@ 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>Mail With Attachement</title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <table cellpadding="4" cellspacing="4" width="40%" align="center" border="0"style="border-color: Silver;">
                <tr>
                    <td align="center" style="background-color: Gray; height: 30px;">
                        <span>Sending mail with attachement in asp.net. </span>
                    </td>
                </tr>
                <tr>
                    <td>                    <table cellpadding="2" cellspacing="2" width="70%" align="center"style="background-color: #A5A5A5;">
                            <tr>
                                <td>                                   <asp:Label ID="lblMailFrom" runat="server" Text="From:" Width="100px"></asp:Label>                                    <asp:TextBox ID="txtFrom" runat="server" Width="200px"></asp:TextBox>                                             </td>
                            </tr>
                            <tr>
                                <td>                                    <asp:Label ID="lblMailTo" runat="server" Text="To:" Width="100px"></asp:Label>                                    <asp:TextBox ID="txtMailTo" runat="server" Width="200px"></asp:TextBox>                                                    </td>
                            </tr>
                            <tr>
                                <td>                                  <asp:Label ID="lblSubject" runat="server" Text="Subject:"Width="100px"></asp:Label>                                    <asp:TextBox ID="txtSubject" runat="server" Width="200px"></asp:TextBox>                                         </td>
                            </tr>
                            <tr>
                                <td>                                   <asp:Label ID="lblAttachFile" runat="server" Text="File to send:"Width="100px"></asp:Label>                                    <input type="file" id="fileAttachement" runat="server"name="fileAttachement" width="200px" />                                </td>
                            </tr>
                            <tr>
                                <td>                                   <asp:Label ID="lblMessage" runat="server" Text="Your Message:"Width="100px"></asp:Label>                                  <asp:TextBox ID="txtMessage" runat="server" TextMode="MultiLine"Height="80px" Width="200px"></asp:TextBox>
                                </td>
                            </tr>
                            <tr>
                                <td align="center">
                                    <asp:Button ID="btnSendMail" runat="server" Text="Send Mail"OnClick="btnSendMail_Click"  Width="140px" />
                                </td>
                            </tr>
                        </table>
                    </td>
                </tr>
            </table>
        </div>
    </form>
</body>
</html>

aspx.cs code:

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Net.Mail;

public partial class _Default : System.Web.UI.Page
{
    string FileNameToAttache;

    protected void Page_Load(object sender, EventArgs e)
    {
    } 

    protected void btnSendMail_Click(object sender, EventArgs e)
    {
        MailMessage message = new MailMessage();    
        message.From = new MailAddress(txtFrom.Text);  
        message.To.Add(new MailAddress(txtMailTo.Text));
        message.Body = txtMessage.Text;
        message.IsBodyHtml = true;
        message.Subject = txtSubject.Text;      
        if (AttachFile.PostedFile != null)
        {
            HttpPostedFile attFile = AttachFile.PostedFile;
            int attachFileLength = attFile.ContentLength;
            if (attachFileLength > 0)
            {
                FileNameToAttache = Path.GetFileName(AttachFile.PostedFile.FileName);
                AttachFile.PostedFile.SaveAs(Server.MapPath(FileNameToAttache));
                message.Attachments.Add(new Attachment(Server.MapPath(FileNameToAttache)));
            }
        } 

        SmtpClient emailWithAttach = new SmtpClient();
        emailWithAttach.Host = "localhost";
        emailWithAttach.DeliveryMethod = SmtpDeliveryMethod.Network;
        emailWithAttach.UseDefaultCredentials = true;
        emailWithAttach.Send(message);
    }
}


On running the Application, output will be:
SendMail.JPG

Image 1.

  Comment:
         HOME   |   Submit Article   |   Contact Us   |   About Us   |   Terms & Condition   |   Advertise With us