npoi List 泛型导出

大家都datatable导出的原因是datatale明确的表头,但是泛型下乏力,跟踪代码发现可以如下方法获取到动态类型的字段和值

 listData 为 List<dynamic>

                foreach (var item in listData)
                {
                    var keys = ((System.Collections.Generic.IDictionary<string, object>)item).Keys;
                    var values = ((System.Collections.Generic.IDictionary<string, object>)item).Values;

                    for (int i = 0; i < keys.Count; i++)
                    {
                        var str = keys.ToList()[i].ToString();
                        var value = values.ToList()[i];
                    }
                }    

这个keys就可以来写表头
values就是表的各个字段的值

posted @ 2019-07-10 17:35  Tlink  阅读(392)  评论(0编辑  收藏  举报