首页 新闻 会员 周边 捐助

ASP.NET 导出excel 数据量大的问题

0
[已解决问题] 解决于 2013-09-29 15:38
tbs.Length =2012;
ps.lengt=60;
   if (tbs.HasMember())
                    {
                        var ps = tbs[0].GetType().GetProperties();
                        int z = tbs.Length;
                        int h = ps.Length;
                        for (int i = 0; i < tbs.Length; i++)
                        {
                            for (int j = 0; j < ps.Length; j++)
                            {
                                sheet.Cells[9 + i, 1 + j] = ps[j].GetValue(tbs[i], null);
                            }
                        }
                    }
                }

上述代码执行时间比较长

新麦穗的主页 新麦穗 | 初学一级 | 园豆:82
提问于:2013-09-28 11:30
< >
分享
最佳答案
0
tbs.Length =2012;
ps.lengt=60;
   if (tbs.HasMember())
                    {
                        var ps = tbs[0].GetType().GetProperties();
                        int z = tbs.Length;
                        int h = ps.Length;
                        for (int i = 0; i <z; i++)
                        {
                            for (int j = 0; j < h; j++)
                            {
                                sheet.Cells[9 + i, 1 + j] = ps[j].GetValue(tbs[i], null);
                            }
                        }
                    }
                }
这是简单的提取长度在外部,看你的方式,好像是用的Office的Excel组件,如果导出为xls的话,可以考虑NPOI,xlsx可以考虑Epplus,另外数据量达到10w(列50+),最好还是使用OpenXml
奖励园豆:5
幻天芒 | 高人七级 |园豆:37207 | 2013-09-28 11:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册