C# 如何在RDLC报告中管理System.OutOfMemory和SQL超时异常

C# 如何在RDLC报告中管理System.OutOfMemory和SQL超时异常,c#,exception-handling,rdlc,C#,Exception Handling,Rdlc,我制作了一个基于SQL数据库数据生成报告的应用程序。该应用程序对于条目数较少的报表工作正常,但在某些情况下,我会遇到OutOfMemory异常或数据库超时异常。我的问题是如何管理这些异常,以便将所有数据正确写入报表? 我在应用程序中使用C#(VS2010)和RDLC报告 谢谢除了为电脑添加内存外,您无法对系统执行任何操作。OutOfMemory异常。要处理超时,您可以增加超时。您无法真正“处理”异常以获取报告中的所有数据。 你可以调整暂停时间,但这不会让你走多远 您可以做的事情是防止出现异常:

我制作了一个基于SQL数据库数据生成报告的应用程序。该应用程序对于条目数较少的报表工作正常,但在某些情况下,我会遇到OutOfMemory异常或数据库超时异常。我的问题是如何管理这些异常,以便将所有数据正确写入报表? 我在应用程序中使用C#(VS2010)和RDLC报告


谢谢

除了为电脑添加内存外,您无法对系统执行任何操作。OutOfMemory异常。要处理超时,您可以增加超时。

您无法真正“处理”异常以获取报告中的所有数据。 你可以调整暂停时间,但这不会让你走多远

您可以做的事情是防止出现异常:

  • 对于OutOfMemoryException:您不应该计算聚合或执行大部分计算报告端。在计算的大部分时间里,您可能依赖于视图或OLAP
  • 对于TimeOutException,答案与内存相同。但是您应该首先依赖查询优化(索引、查询提示)以及存储过程,而不是非常复杂(编译时间很长)的动态查询

你是对的,我简化了查询,现在它只需几秒钟就能执行(我将数据转换部分切换到rdlc报告本身)