大家都datatable导出的原因是datatale明确的表头,但是泛型下乏力,跟踪代码发现可以如下方法获取到动态类型的字段和值
listData 为Listforeach (var item in listData) { var keys = ((System.Collections.Generic.IDictionary)item).Keys; var values = ((System.Collections.Generic.IDictionary )item).Values; for (int i = 0; i < keys.Count; i++) { var str = keys.ToList()[i].ToString(); var value = values.ToList()[i]; } }
这个keys就可以来写表头
values就是表的各个字段的值