如何创建自定义列名的表?

问题描述 投票:0回答:1

使用 ClosedXML 我想创建一个 Excel 文件,其中包含一个 Excel 表格。我尝试过

List<string[]> rows = new();
rows.Add(new string[] { "Id", "Title" }); // this is the header
rows.Add(new string[] { "1", "Hello world" });
rows.Add(new string[] { "2", "Hello world again" });

using var wb = new XLWorkbook();
var ws = wb.AddWorksheet();
ws.Cell(1, 1).InsertTable(rows);
wb.SaveAs("myfile.xlsx");

但是这不知道/识别第一行作为列名,所以它最终是

那么,我该如何解决这个问题呢?当然,我可以拆分标题(

rows
中的第一项)和其余数据,但我仍然不知道如何告诉 ClosedXML 用于表的列名?

c# excel closedxml
1个回答
0
投票

如果您希望表具有命名标题而不是匿名字符串数组,则似乎

InsertTable
依赖于类型信息:

record Item(string Id, string Title);

List<Item> rows = new();
rows.Add(new Item("1", "Hello world"));
rows.Add(new Item("2", "Hello world again"));

using var wb = new XLWorkbook();
var ws = wb.AddWorksheet();
ws.Cell(1, 1).InsertTable(rows);
wb.SaveAs("myfile.xlsx");

请参阅文档中相关部分

© www.soinside.com 2019 - 2024. All rights reserved.