1

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

谢谢

4

2 回答 2

1

System.OutOfMemory除了给你的电脑增加内存之外,你不能做任何事情。要使用超时,您可以增加超时。

于 2012-12-12T09:47:13.707 回答
1

您无法真正“处理”异常以在报告中获取所有数据。你可以调整超时,但它不会让你走得太远。

您可以做的是防止异常:

  • 对于 OutOfMemoryException :您不应该计算聚合或做大部分计算报告方面。您可能依赖视图或 OLAP 来完成大部分计算。
  • 对于 TimeOutException,与内存的答案相同。但是您应该首先依赖查询优化(索引、查询提示)以及存储过程而不是非常复杂(编译时间长)的动态查询
于 2012-12-12T09:55:11.177 回答