如何使用C#中的LINQ将数据从Gridview或数据库导出到Excel?

我用这个代码从Excel Sheet导入数据到数据库,现在我想做相反的事情。

private void pictureBox1_Click(object sender, EventArgs e) { string pach = @"D:\C# Projects\P.xlsx"; var exlData = new ExcelQueryFactory(pach); var data = from x in exlData.Worksheet<excelData>("Sheet1") select x; DataClassesDataContext db = new DataClassesDataContext(); foreach (var d in data) { db.tbl_PrsInfos.InsertOnSubmit(new tbl_PrsInfo { Id = d.Id, FullName = d.FullName, Personnely = d.Personnely, CodeBank = d.CodeBank, Bank = d.Bank, Email = d.Email, State = d.State, }); } db.SubmitChanges(); dgv_prs_add.DataSource = from show in db.tbl_PrsInfos select show; } 

它看起来像你正在使用LinqToExcel库,这是Excel工作表的只读界面。

要写一个Excel文件,你有几个select:

  • 使用第三方库来编写Excel文件,而不需要安装Excel(例如Aspose的库)
  • 使用内置的C#文件编写function编写CSV文件,并在Excel中打开CSV
  • 使用办公自动化以编程方式创buildExcel文件。 这需要安装Excel。