EPPlus:“LoadFromCollection”出现“列超出范围”错误

6

当使用LoadFromCollection时,我遇到了“列超出范围”的错误-以下是代码。插入到EPPlus附带的SampleApp中以复制。

我做错了什么,还是这是一个错误?或者是我没有设置的配置设置?

public class tst
    {
        public string Name;
        [Description("Created Time")]
        public DateTime Created_time;
    }


     var pck = new ExcelPackage();

            var kpcollection = new List<tst>();
            for (var i = 1; i <= 10; i++)
            {
                kpcollection.Add(new tst
                {
                    Name = "line" + i.ToString(),
                    Created_time = DateTime.Now
                });
            }

            var wsenum = pck.Workbook.Worksheets.Add("KPTest");
            //Load the collection starting from cell A1...
            wsenum.Cells["A1"].LoadFromCollection(kpcollection, true, TableStyles.Medium9);
2个回答

3

3
只有在使用List<dynamic>时才会出现此错误。采纳Harish 的答案可以解决OP的问题。EPPlus可用于具有可访问setter的属性。 - Jeremy Hodge

3

为每个变量添加像 { get; set;} 这样的属性,因为 epplus 的工作方式是基于类的属性。

例如,不要使用以下方式:

class student
{
    int num;
   string name;
}

使用这个:

class student
{
     int num { get; set; }
     string name { get; set; }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接