Mohamed Nor Abdullahi
#простое решение ( хотя этот код является vb.net код; но идея та же и простая )
Я только что решил эту проблему с помощью CrystalReportViewer * * Navigate Event**
в кнопку просмотреть отчет, который я сохраненный документ доклад в сессии
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
' -- the ds is dataset variable containing data to be displayed in the report
rptDoc.SetDataSource(ds)
Session.Add("rptdoc", rptDoc)
CrystalReportViewer1.ReportSource = rptDoc
End Sub
затем в случае навигации CrystalReportViewer я устанавливаю источник данных CrystalReportViewer на сеанс
Protected Sub j(ByVal source As Object, ByVal e As CrystalDecisions.Web.NavigateEventArgs) Handles CrystalReportViewer1.Navigate
rpt.SetDataSource(ds)
CrystalReportViewer1.ReportSource = session("rptdoc")
End Sub
Поэтому каждый раз перед переходом на другую страницу отчета источник данных CrystalReportViewer устанавливается в документ отчета , сохраненный в сеансе.