Как экспортировать таблицы в формате Excel
У меня есть gridview с двумя верхними и одним нижним колонтитулами, и я пытаюсь экспортировать gridview в формат excel, но после экспорта он не будет показывать верхний и Нижний колонтитулы, а только записи
Что я уже пробовал:
public void ExportGridToExcel(GridView Grd1,string Filename) { HttpContext.Current.Response.Clear(); HttpContext.Current.Response.Buffer = true; HttpContext.Current.Response.ClearContent(); HttpContext.Current.Response.ClearHeaders(); HttpContext.Current.Response.Charset = ""; string FileName = "FileName" + DateTime.Now + ".xls"; StringWriter strwritter = new StringWriter(); HtmlTextWriter htmltextwrtter = new HtmlTextWriter(strwritter); HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache); HttpContext.Current.Response.ContentType = "application/vnd.ms-excel"; HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=" + Filename); Grd1.GridLines = GridLines.Both; Grd1.HeaderStyle.Font.Bold = true; Grd1.RenderControl(htmltextwrtter); HttpContext.Current.Response.Write(strwritter.ToString()); HttpContext.Current.Response.End(); }
Karthik_Mahalingam
показать разметку gridview
Richard Deeming
Вы не экспортируете в формате Excel; вы отправляете HTML, но сообщаете браузеру, что это файл Excel. Затем Excel делает все возможное, чтобы преобразовать HTML в a реальный" Файл Excel, но вы не можете контролировать, как он это делает.
Попробуйте использовать библиотеку, которая позволит вам создать реальный файл Excel вместо этого. Например:
* EPPlus[^];
* ClosedXML[^];
* SDK OpenXML[^];
Karthik_Mahalingam
возможное решение.