отчет о нескольких кристаллах 9.0 в asp.net 3.5

Я мог бы задать очень простой вопрос, и я прошу прощения за это.

У меня есть веб-приложение, которое является своего рода порталом отчетности. У меня есть страница ReportViewer.aspx, на которой есть элемент управления crystalreportviewer, и я использую одно и то же средство просмотра для отображения разных отчетов. Отчеты сделаны кем-то другим, поэтому у меня есть файл .rpt, который я включил в свой проект.

Я даю источник данных отчета динамически, поэтому нет привязки статических данных (также динамически передавая параметры)

Отчеты обычно имеют более одной страницы.

Проблема в том, что когда я перехожу на следующую страницу, происходит обратная передача, и она снова выполняет привязку данных.

Если я сохраню объект reportdocument в сеансе, проверю IsPostback и просто вытащу его из сеанса, он будет работать нормально.

Вопрос в том, правильный ли это способ. потому что, если я открою новую вкладку и увижу тот же отчет, я в конечном итоге потеряю свой первый отчет ... (я мог бы избежать этого, выполнив какое-то странное управление сеансом, например, передав guid в строке запроса, а затем извлекая правильный объект отчета), но все еще это правильный путь?

любые примеры того, как это делается, были бы действительно замечательными...

Ваше здоровье,

Oz


person Sheikh Usman    schedule 17.05.2010    source источник


Ответы (1)


Ну, вы сохраняете ReportDocument в сеансе и привязываете его к CrystalViewer, если PostBack.

Важный момент, однако, заключается в том, чтобы сделать все это в Page_Init вместо Page_Load, иначе многостраничные кристаллические отчеты будут зависать на странице 2, когда вы нажмете следующую кнопку...

person Sheikh Usman    schedule 26.05.2010