什么是从水晶报告中释放记忆的正确方法

时间:2014-03-03 13:53:13

标签: asp.net crystal-reports

我只想知道释放水晶报告占用的内存的正确方法是什么。

这是我的代码:

 ReportDocument reportdocument = new ReportDocument();
            try
            {
                reportdocument.Load(Server.MapPath(@"~/EndUser/PostHistoryReport.rpt"));
                reportdocument.SetDataSource(myDataSet);
                reportdocument.SetDatabaseLogon("user", "user123");
                CrystalReportViewer1.ReportSource = reportdocument;
            }
            finally
            {
                if (reportdocument != null)
                {
                    reportdocument.Close();
                    ((IDisposable)reportdocument).Dispose();
                    GC.Collect();
                }
            }

1 个答案:

答案 0 :(得分:1)

我的猜测是,当放置CrystalReportViewer1的页面关闭时,您需要释放内存。将您的报告文档放在会话变量中,并在关闭页面时关闭并处理它。