sandeep kumar

sandeep kumar

  • 1.9k
  • 58
  • 5.4k

Sending Email with Excel Attachment (2 sheets)

Oct 15 2018 11:17 AM
Hello Everyone.
I have code which sends an email along with excel attachments. 
The code is as follows.
My question is How can I send and email excel workbook which should contain 2 different excelsheets.(One excel workbook with 2 excel sheets). Please help me.
GridView1.Visible = true;
GridView2.Visible = true;
StringWriter stw = new StringWriter();
StringWriter stw1 = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(stw);
HtmlTextWriter hw1 = new HtmlTextWriter(stw1);
MailMessage mail = new MailMessage();
mail.IsBodyHtml = true;
mail.To.Add(new MailAddress(TextBox1.Text));
mail.Subject = "Sales Report";
System.Text.Encoding Enc = System.Text.Encoding.ASCII;
byte[] mBArray = Enc.GetBytes(stw.ToString());
System.IO.MemoryStream mAtt = new System.IO.MemoryStream(mBArray, false);
System.Text.Encoding Enc1 = System.Text.Encoding.ASCII;
byte[] mBArray1 = Enc1.GetBytes(stw1.ToString());
System.IO.MemoryStream mAtt1 = new System.IO.MemoryStream(mBArray1, false);
mail.Attachments.Add(new Attachment(mAtt, "G1.xls"));
mail.Attachments.Add(new Attachment(mAtt1, "G2.xls"));
mail.Body = "please find the attachment";
SmtpClient smtp = new SmtpClient();
mail.From = new MailAddress("mailadress", "uname");
smtp.Host = "";
smtp.Port = 587;
smtp.UseDefaultCredentials = false;
smtp.Credentials = new System.Net.NetworkCredential(@"mailaddress", "password");
smtp.EnableSsl = true;
Label1.Text = "Email Sent";
Thank you,

Brought to you by: JavaScript SDK for Bold BI dashboard and analytics embedding. Free trial.

Answers (8)