在reportviewer中处理67000条记录时出现“内存不足异常”

时间:2013-10-23 05:06:08

标签: asp.net c#-4.0 devexpress

我有一份额外的报告,包含71列的“62976”记录。我试图在reportviewer控件中加载此报告,几分钟后我得到“Out of Memory Exception”。有没有办法在报表查看器中加载此报表?我正在使用devexpress的xtraReports。

我的代码由一个填充了这62976条记录的数据集组成。我使用foreach对这些记录进行了一些记录操作,最后将这个foreach的输出提供给reportviewer。我试过调试,调试器通过所有代码行而没有失败。最后,我看到报告查看器正在运行加载图像(这意味着正在处理大量数据),大约60秒后,抛出异常。

我尝试过的事情。

清除临时文件夹 重启visual studio 重启我的机器

1 个答案:

答案 0 :(得分:2)

一些Devexpress报告控件似乎有很多内存泄漏问题。我们遇到了XtaRichEditControl的问题,必须将它从项目中完全删除。但是67000是一个庞大的数字,具体取决于你的系统配置。报告确实消耗了很多资源。

您可以尝试使用内存分析器找出哪个类/对象使用的内存最多。我们使用了Ans memory profiler

另一种选择是将WinDbg与SOS一起使用。