Skip to main content

Send E-mail with attached file in asp.net


First of all add one namespace
  • using System.Net.Mail
then enter following code . make sure that following code has attached one text file with folder name you have to give you folder name and file name.
");
strbody.Append("
");
string result = SendEMailMessage("test@gmail.com""test""test1@gmail.com", strbody.ToString(), "Testing");
if (result.ToString() == "Mail sent successfully")
      ScriptManager.RegisterStartupScript(Page, Page.GetType(), "str""alert('Mail Sent Successfully.');", true);
else
      ScriptManager.RegisterStartupScript(Page, Page.GetType(), "str""alert('Mail Sending fail.');", true);

public static string SendEMailAttachment(string EMailFrom, string EMailName, string EMailTo, string EmailBody, string EmailSubject)
    {
        string SmtpServer = "smtp.gmail.com";
        string smtpusername = "yourgmailemailid@gmail.com";
        string smtppassword = "password";
        string flah = "";
        SmtpClient SmtpMail = new SmtpClient();
        MailMessage message = new MailMessage();
        System.Net.Mail.Attachment attach = new System.Net.Mail.Attachment(System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath + "OrderText\\Order.txt");
        message.Attachments.Add(attach);
        message.IsBodyHtml = true;
        try
        {
            SmtpMail.Host = SmtpServer;
            SmtpMail.UseDefaultCredentials = false;
            SmtpMail.Credentials = new System.Net.NetworkCredential(smtpusername, smtppassword);//Fetching the credentials
            MailAddress fromAddress = new MailAddress(EMailFrom, EMailName);// Set the sender address of the mail message
            message.From = fromAddress;
            message.Sender = fromAddress; // Set the recepient address of the mail message
            message.To.Add(EMailTo); // Set the subject of the mail message
            message.Subject = EmailSubject; // Set the format of the mail message body as HTML
            message.Body = EmailBody;
            message.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
            SmtpMail.Send(message);
            if (message.Attachments.Count > 0)
            {
                attach.Dispose();
            }
            flah = "Mail sent successfully";
            return flah;
        }
        catch (Exception ex)
        {
            flah = "Mail could not be sent successfully " + ex.Message;
            return flah;
        }


How to call this mail function
   StringBuilder strbody = new StringBuilder();
strbody.Append("your content");
strbody.Append("your content");
string result = SendEMailMessage("test@gmail.com", "test", "test1@gmail.com", strbody.ToString(), "Testing");
if (result.ToString() == "Mail sent successfully")
      ScriptManager.RegisterStartupScript(Page, Page.GetType(), "str", "alert('Mail Sent Successfully.');", true);
else
      ScriptManager.RegisterStartupScript(Page, Page.GetType(), "str", "alert('Mail Sending fail.');", true);

Comments

Popular posts from this blog

Asp.Net AjaxFileUpload Control With Drag Drop And Progress Bar

This Example explains how to use AjaxFileUpload Control With Drag Drop And Progress Bar Functionality In Asp.Net 2.0 3.5 4.0 C# And VB.NET. Previous Post  I was Explained about the   jQuery - Allow Alphanumeric (Alphabets & Numbers) Characters in Textbox using JavaScript  ,  Fileupload show selected file in label when file selected  ,  Check for file size with JavaScript before uploading  . May 2012 release of AjaxControlToolkit includes a new AjaxFileUpload Control  which supports Multiple File Upload, Progress Bar and Drag And Drop functionality. These new features are supported by Google Chrome version 16+, Firefox 8+ , Safari 5+ and Internet explorer 10 + , IE9 or earlier does not support this feature. To start with it, download and put latest AjaxControlToolkit.dll in Bin folder of application, Place ToolkitScriptManager  and AjaxFileUpload on the page. HTML SOURCE < asp:ToolkitScriptManager I...

AngularJS Interview Questions and Answers

1) What is Angular.js ? AngularJS is a javascript framework used for creating single web page applications.  It allows you to use HTML as your template language and enables you to extend HTML’s syntax to express your application’s components clearly 2) Explain what are the key features of Angular.js ? The key features of angular.js are Scope Controller Model View Services Data Binding Directives Filters Testable 3) Explain what is scope in Angular.js ? Scope refers to the application model, it acts like glue between application controller and the view.  Scopes are arranged in hierarchical structure and impersonate the DOM ( Document Object Model) structure of the application.  It can watch expressions and propagate events. 4) Explain what is services in Angular.js ? In angular.js services are the singleton objects or functions that are used for carrying out specific tasks.  It holds some business logic and these function can be called as contro...

How to send mail asynchronously in asp.net with MailMessage

With Microsoft.NET Framework 2.0 everything is asynchronous and we can send mail also asynchronously. This features is very useful when you send lots of bulk mails like offers , Discounts , Greetings . You don’t have to wait for response from mail server and you can do other task . By using     SmtpClient . SendAsync Method (MailMessage, Object)    you need to do  System.Net.Mail has also added asynchronous support for sending email. To send asynchronously, you need need to Wire up a SendCompleted event Create the SendCompleted event Call SmtpClient.SendAsync smtpClient.send() will initiate the sending on the main/ui  thread and would block.  smtpClient.SendAsync() will pick a thread from the .NET Thread Pool and execute the method on that thread. So your main UI will not hang or block . Let's create a simple example to send mail. For sending mail asynchronously you need to create a event handler that will notify that mail success...