Как отключить кеширование данных в ActiveReports 3.0 для .NET? - PullRequest
0 голосов
/ 11 июня 2009

Мне нужно исправить ошибку в приложении ASP.NET 2.0, которое использует ActiveReports 3.0 для генерации отчетов из хранимого источника процедур SQL Server. Отчет работает нормально, но данные были неверными, поэтому мы исправили хранимый процесс и перезапустили отчет через интерфейс ASP.NET.

Мы видим, что ActiveReports по-прежнему отображает раннюю версию данных. Фактически есть поле данных отчета, переданное из proc, которое указывает, когда были созданы данные, и подтверждает, что это устаревшие данные.

Так что кажется, что ActiveReports кэширует предыдущий результат, и мы хотели бы отключить эту функциональность, но я не вижу много в документации, чтобы объяснить, как работает кэш (время жизни и т. Д.) Или как настроить или отключить его. Любое понимание будет с благодарностью.

Кстати, не уверен, что это актуально, но мы не используем элемент управления WebViewer, а создаем экземпляр ActiveReport3, запускаем его (), а затем используем класс PdfExport для создания изображения PDF и Response.BinaryWrite (). это прямо.

1 Ответ

1 голос
/ 22 июня 2009

Причина, по которой вы не видите документацию о функциях кэширования в ActiveReports, заключается в том, что их нет, если вы не используете элемент управления WebViwer :) Однако в описываемом вами сценарии - без использования веб-обозревателя - AR не будет выполнять никаких действий. кеширование само. Я подозреваю, что кеширование, которое вы видите, - это кэширование вывода HTTP, такое как браузер, сервер (через ASP.NET, кэширование вывода страницы или пользовательский контроль), или какой-то прокси-сервер между сервером и клиентом кэширует ранее обработанный вывод.

WebViewer использует преимущества встроенной в ASP.NET инфраструктуры для кэширования (например, WebCache, политики HTTP-кэширования и т. Д.). См. Свойство SlidingExpirationInterval WebViewer и ClearCachedReport для метода для получения информации о том, как управлять кэшированием, которое делает ActiveReports.

...