_ProgProg_ Ответов: 1

Скачать datatable как файл excel 2013


Дорогие,

Я хочу загрузить DataTable Data в виде файла Excel 2013, а не excel 2003.
Вот мой код:

private void DownloadExcelReport(DataTable dtResult)
        {
            var gv = new GridView
            {
                DataSource = dtResult
            };
            gv.DataBind();
            Response.ClearContent();
            Response.Buffer = true;
            Response.AddHeader("content-disposition", "attachment; filename=AllDataReport.xlsx");
            Response.ContentType = "application/application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
            Response.Write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />");            
            StringWriter objStringWriter = new StringWriter();
            HtmlTextWriter objHtmlTextWriter = new HtmlTextWriter(objStringWriter);
            gv.RenderControl(objHtmlTextWriter);
            Response.Output.Write(objStringWriter.ToString());
            Response.End();
        }


результат:
Файл загружается как файл .xlsx, но я не могу его открыть.
Появится Следующее Сообщение:
Excel не может открыть файл, так как расширение недопустимо убедитесь, что файл не поврежден и что расширение файла соответствует формату файла.

Что я уже пробовал:

Я немного поискал и нашел следующее:
Измените тип контента и заголовок ответа из этого списка:
//Ответ.AddHeader("content-disposition", "attachment; filename=AllDataReport.xls");
//Ответ.ContentType = "приложение/ms-excel";

Быть Таким, Как Сейчас:
Ответ.AddHeader("content-disposition", "attachment; filename=AllDataReport.xlsx");
Ответ.Значение contentType = "применение/применение/донгов.openxmlformats-officedocument.квалификатором.лист";

Patrice T

Простого именования файла xlsx недостаточно, чтобы сделать его файлом excel.
Каково содержание этого файла ?

_ProgProg_

Строки и столбцы. Арабские данные

Patrice T

Каков формат файла

_ProgProg_

У меня просто есть данные из базы данных, не экспортированные ни в один формат файла.
Я хочу экспортировать его в формат .xlsx.

Patrice T

вы должны использовать библиотеку для экспорта в. XLSX файл формате или экспортировать в текстовый файл формата csv-файла

_ProgProg_

Не могли бы вы привести мне пример?

#realJSOP

Можете ли вы использовать google? Спрашиваю о друге...

1 Ответов

Рейтинг:
0

#realJSOP

Если у вас есть datatable, вы можете сохранить его в виде xml-файла с помощью DataTable.WriteXML() метод, а затем откройте этот файл в excel.