使用C#生成Excel文件而不使用Office工具

Joe*_*ike 1 c# asp.net excel gridview export-to-excel

目前我正在使用EPPlus库,主要是因为EPPPlus不需要在最终用户PC上安装办公室,但是现在我已经在每个行和列中指定(插入)到该库的工作表中.

我想在没有office工具的情况下从服务器端的GRIDVIEW数据生成excel文件.

所以我需要一些其他解决方案或库文件,可以满足我的期望.

提前致谢.

Tim*_*ter 5

我必须承认,我不明白为什么你不能使用EPPlusGridView.

你可以使用DataSourceGridView,例如,如果它是一个DataTable:

try {
    var pck = new OfficeOpenXml.ExcelPackage();
    var ws = pck.Workbook.Worksheets.Add("Sheet-Name");
    ws.Cells["A2"].LoadFromDataTable(tbl, false);
    Response.Clear();
    Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
    Response.AddHeader("content-disposition", "attachment;  filename=FileName.xlsx");
    Response.BinaryWrite(pck.GetAsByteArray());
} catch (Exception ex) {
    //log error
}
Response.End();
Run Code Online (Sandbox Code Playgroud)