我想使用EPPlus水平加载数据。

var randomData = new[] { "Foo", "Bar", "Baz" }.ToList();
ws.Cells["B4"].LoadFromCollection(randomData);


默认行为是垂直的,此代码将导致:

c# - 水平加载FromCollection-LMLPHP

这就是我需要的:

c# - 水平加载FromCollection-LMLPHP

使用EPPlus的缺点是,它们的documentation是粗略的。

最佳答案

如果您做了这样的事情怎么办:

var randomData = new[] { "Foo", "Bar", "Baz" }.ToList();
//ws.Cells["B4"].LoadFromCollection(randomData);
ws.Cells["B4"].LoadFromArrays(new List<string[]>(new[] { randomData.ToArray() }));


这使我在输出中:

c# - 水平加载FromCollection-LMLPHP

请记住,如果您担心性能(例如,对于非常大的集合),则最好还是编写自己的代码,因为LoadFrom*方法确实会增加开销,以解决多种情况。

10-05 21:11