ASP.NET - 将数据表导出到 excel 时删除 Header/Sorting 行

ASP.NET - Remove Header/Sorting row when exporting datatable to excel

请帮帮我。

我想知道如何将我的数据表导出到 excel 工作表而不需要 header 或排序行(即第一行)。

这是我的代码:

protected void Button2_Click(object sender, EventArgs e) {
            string constr = ConfigurationManager.ConnectionStrings["bscConnectionString"].ConnectionString;
            SqlConnection con = new SqlConnection(constr);
            SqlCommand cmd = new SqlCommand(SqlDataSource1.SelectCommand);
            cmd.CommandType = CommandType.StoredProcedure;
            SqlDataAdapter sda = new SqlDataAdapter();
            cmd.Connection = con;
            sda.SelectCommand = cmd;
            DataTable dt = new DataTable();



            cmd.CommandText = "FechasRango1";
            cmd.Parameters.AddWithValue("@Fecha", TextBox1.Text);
            cmd.Parameters.AddWithValue("@Fecha2", TextBox2.Text);


            sda.Fill(dt);
            if (dt.Rows.Count == 0)
            {
                Page.ClientScript.RegisterStartupScript(this.GetType(), "Scripts", "<script>alert('No Hay Resultados');</script>");
            }
            else if (dt.Rows.Count != 0)
            {
                XLWorkbook wb = new XLWorkbook();
                wb.Worksheets.Add(dt, "Customers");

                Response.Clear();
                Response.Buffer = true;
                Response.Charset = "";
                Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                Response.AddHeader("content-disposition", "attachment;filename=SqlExport.xlsx");
                MemoryStream MyMemoryStream = new MemoryStream();
                {
                    wb.SaveAs(MyMemoryStream);
                    MyMemoryStream.WriteTo(Response.OutputStream);
                    Response.Flush();
                    Response.End();
                }
            }
        }

这是我的结果:

我很确定你的这行代码可以完成你刚在 return 中添加的工作sheet:

wb.Worksheets.Add(dt, "Customers");

将其保存在变量中,让 sheet 并删除第一行:

sheet.Range("A1", "A1").EntireRow.Delete();

看起来您正在使用 ClosedXML 库。 Here 你会发现很多关于如何删除行的例子。