我创建了一个 rdl 文档,它指向一个返回 90 000 行的过程,但我遇到了内存不足的异常。报表项目可以处理的行数是否有限制?
目前,我已经更改了驱动我的报告的过程,只选择前 90 000 行。我的规格是能够创建包含 120 000 行的报告。我的报告是一个矩阵。
我发誓上周我生成了一份包含 106800 行的报告,但现在突然我不能了。
我已经编写了一个渲染扩展,这是我进入代码时出现的异常的一部分。
电子信息: 2/12/2009 12:03:53
PM PrairieFyre.ReportActions.RenderReport:渲染报告时出错
Microsoft.Reporting.WinForms.LocalProcessingException:错误
发生在本地报告处理期间。 --->
Microsoft.ReportingServices.ReportProcessing.ReportProcessingException:
报告处理中发生意外错误。 --->
System.OutOfMemoryException:异常类型
抛出“System.OutOfMemoryException”。在
System.IO.MemoryStream.set_Capacity(Int32值)位于
System.IO.MemoryStream.EnsureCapacity(Int32 值)位于
System.IO.MemoryStream.Write(Byte[]缓冲区,Int32偏移量,Int32计数)
在 System.IO.BinaryWriter.Write(字符串值)处
Microsoft.ReportingServices.ReportProcessing.Persistence.IntermediateFormatWriter.ReportServerBinaryWriter.WriteString(字符串
字符串值) ....
我认为除了硬件配置之外没有任何限制。如果您在 32 位计算机上,处理此问题的工作进程的可用内存少于 2 GB,当您考虑内核模式内存时,可能接近 1 GB。如果您要提供像这样的大型报告,您可能需要 64 位设置,并且机器上至少有 4 GB 或更多内存。此设置将允许工作进程分配超过 2 GB 的可用内存来毫无问题地完成这些大型请求。
如果无法选择硬件升级,您也可以考虑这些替代方案。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)