How to export dataset/datatable to excel in asp.net (c#)

Aman Sharma
0

 Function to generate excel from dataset or datatable is given below:

 // Export to excel

public void ExportToExcel(DataSet ds, string filename)

        {

            HttpResponse response = HttpContext.Current.Response;

            // first let's clean up the response.object

            response.Clear();

            filename += ".xls";

            response.AddHeader("Content-Disposition", "attachment;filename= " + filename);//+ "\"");

 

            response.Charset = "";

            // set the response mime type for excel

            response.ContentType = "application/vnd.ms-excel";

            response.ContentEncoding = System.Text.Encoding.Unicode;

            response.BinaryWrite(System.Text.Encoding.Unicode.GetPreamble());

 

            // create a string writer

            using (StringWriter sw = new StringWriter())

            {

                using (HtmlTextWriter htw = new HtmlTextWriter(sw))

                {

                    // instantiate a datagrid

                    DataGrid dg = new DataGrid();

                    dg.HeaderStyle.Font.Bold = true;

                    dg.HeaderStyle.Font.Name = "Arial";

                    dg.HeaderStyle.Font.Size = 10;

                    dg.HeaderStyle.ForeColor = System.Drawing.Color.White;

                    dg.HeaderStyle.BackColor = System.Drawing.Color.Black;

                    dg.DataSource = ds;

                    dg.DataBind();

                    dg.RenderControl(htw);

                    HttpContext.Current.Response.Write(sw.ToString());

                    HttpContext.Current.Response.Flush();

                    //HttpContext.Current.ApplicationInstance.CompleteRequest();

 

                    HttpContext.Current.Response.End();

                }

            }

 

            return;

        }

    

Post a Comment

0Comments
Post a Comment (0)

#buttons=(Accept !) #days=(20)

Our website uses cookies to enhance your experience. Learn More
Accept !