首页 > 解决方案 > EPPlus LoadFromCollection 总是将值放在一列中

问题描述

我想将集合的每个元素设置在一行中,但它们总是添加在一列中,而不是一行。

var headers = new List<string> {...};
var row = 4;
worksheet.Cells[row, 2, row, headers.Count()].LoadFromCollection(headers);

从代码 - 我选择Range我想要加载的集合。但它没有按预期工作。结果在图像中(日期应作为列标题在行中)。

生成的文件

使用 EPPlus 版本 4.5.3.2

标签: c#epplusepplus-4

解决方案


LoadFromCollection 应该是这样工作的。通常,您将复杂类型的集合传递给它,然后该类型的属性将成为列标题,而集合中的每个项目都填充在单独的行中。

由于您传递的是简单类型,因此就像您传递具有单个属性的复杂类型一样。每个值都在不同的行上。

如果您希望集合中的项目位于同一行,只需编写一个 for 循环来迭代集合中的项目并添加它们。


推荐阅读