首页 文章

如何在ActiveReports 3.0 for .NET中禁用数据缓存?

提问于
浏览
0

我需要修复ASP.NET 2.0应用程序中的一个错误,该应用程序使用ActiveReports 3.0从SQL Server存储的proc源生成报告 . 报告运行正常,但数据不正确,因此我们修复了存储过程并通过ASP.NET接口重新报告 .

我们看到的是ActiveReports仍在显示数据的早期版本 . 实际上,从proc传递的报告数据字段指示数据何时生成,并且它确认它是陈旧的数据 .

所以似乎ActiveReports正在缓存早期的结果,我们想关闭这个功能,但是我没有在文档中看到很多解释缓存如何工作(生存时间等)或如何配置或禁用它 . 任何见解将不胜感激 .

顺便说一下,不确定这是否相关,但我们不使用WebViewer控件,而是创建一个ActiveReport3实例,Run()它,然后使用PdfExport类创建一个PDF图像和Response.BinaryWrite()直接输出 .

1 回答

  • 1

    您没有在ActiveReports中看到有关缓存功能的文档的原因是因为除非您使用WebViwer控件,否则没有任何内容:)但是,在您描述的场景中 - 如果不使用webviewer- AR将不会执行任何缓存本身 . 我怀疑你看到的缓存是HTTP输出缓存,例如浏览器,服务器(通过ASP.NET输出缓存页面或用户控件),或者服务器和客户端之间的某些代理缓存先前渲染的输出 .

    WebViewer确实利用ASP.NET 's built in framework for caching (e.g. WebCache, HTTP cache policies, etc.). See the WebViewer' s SlidingExpirationInterval propertyClearCachedReport method获取有关控制如何控制ActiveReports执行缓存的信息 .

相关问题