我正在尝试将(.rdl)报表文件加载到web报表查看器控件(visual studio 2010控件)中:
//Get the data and
.
.
//Add it to report
ReportViewer.LocalReport.DataSources.Add(new ReportDataSource(element.Name, dt));
//Pass the report to the viewer
using (FileStream stream = new FileStream(ReportDocument.FileName, FileMode.Open))
{
this.ReportViewer.LocalReport.LoadReportDefinition(stream);
}
我是不是遗漏了一行代码?我对winforms报表查看器使用了等效的方法,并添加了RefreshReport(),但对于web报表查看器,我找不到等效的方法。这一页仍然是空白的——我缺了什么?
有一个.Refresh()
方法,而这正是您所缺少的。以下是我(在VB中)使用的内容:
ReportViewer1.Reset()
ReportViewer1.LocalReport.Dispose()
ReportViewer1.LocalReport.DataSources.Clear()
ReportViewer1.LocalReport.ReportPath = Server.MapPath("/reports/" & ReportFile)
ReportViewer1.LocalReport.DataSources.Add(New ReportDataSource(<datasource>))
ReportViewer1.LocalReport.Refresh()