gpt4 book ai didi

reporting-services - 处理时的 SSRS ReportViewer nullreference 异常

转载 作者:行者123 更新时间:2023-12-04 13:23:08 28 4
gpt4 key购买 nike

我们目前正在使用 Windows 服务生成 PDF 文件。我最近在优化代码并注意到内存的滥用。这是由于 var reportViewer = new ReportViewer()

周围缺少 using 语句造成的

但是,添加此代码后,代码会在关闭 using block 后抛出运行时 nullreference 异常,该代码源自内部 Dispose 方法。

为什么会出现这个错误,如何正确处理对象?

最佳答案

答案,可以在 Visual Basic 中找到 here是因为出于某种原因,ReportViewer 需要一个 HttpContext。如果不存在,则会发生此错误。

作为解决方法,可以添加以下行来解决问题:

                if (System.Web.HttpContext.Current == null)
{
System.Web.HttpContext.Current = new System.Web.HttpContext(
new System.Web.HttpRequest(System.IO.Path.GetRandomFileName(), "https://www.stackoverflow.com", string.Empty),
new System.Web.HttpResponse(System.IO.TextWriter.Null)
);
}

这将创建一个伪造的 HttpContext,允许以某种方式正确处理 ReportViewer 实例。

关于reporting-services - 处理时的 SSRS ReportViewer nullreference 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46177755/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com