use gridview
gv.DataSource = dt;
gv.DataBind();
Response.ClearContent();
Response.AddHeader("content-disposition", "attachment; filename=" + yourfilename);
Response.ContentType = "application/excel";
System.IO.StringWriter sw = new System.IO.StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
gv.RenderControl(htw);
Response.Write(sw.ToString());
Response.End();