Hub*_*rto 6 c# reportviewer winforms
我有一个WinForms 2.0应用程序,其中包含使用Microsoft ReportViewer创建的大约18个报表.每次启动报表时都会创建一个动态程序集(expression_host_xxxxxx.dll).此动态程序集将加载到内存中,并留在应用程序运行时消耗资源的其余部分.即使我们只有1个报告,我们开始这3次,我们在内存中得到3个这样的expression_host程序集.
有没有办法防止这些程序集被创建或在我们完成后卸载这些程序集?
TIA
我已经找到了解决方案。在报表查看器控件上,您可以表示在所谓的沙箱应用程序域中执行报表:
`rpv1.LocalReport.ExecuteReportInSandboxAppDomain();`
Run Code Online (Sandbox Code Playgroud)
这不会阻止创建 Expression_Host 程序集,因为这些程序集是评估您在报告中使用的表达式所必需的。但是,它将在新的应用程序域中启动报告。报告完成后,该新的应用程序域将被卸载,因此该域中任何已加载的程序集也将被卸载。
| 归档时间: |
|
| 查看次数: |
1002 次 |
| 最近记录: |