我的应用中有ReportViewer(.rdlc)
。我想在Table对象的Reportviewer中显示一个datatable
,它是从代码隐藏中动态生成的。
怎么做?必须通过代码隐藏将数据集发送到报告。
我的代码在文件后面
DataTable dt = Session["ReportOnUser"] as DataTable;
if (dt.Rows.Count > 0)
{
ReportDataSource rds = new ReportDataSource("ReportOnUser", dt);
ReportViewer1.LocalReport.DataSources.Clear();
ReportViewer1.LocalReport.DataSources.Add(rds);
ReportViewer1.LocalReport.Refresh();
}
aspx文件:
<rsweb:ReportViewer ID="ReportViewer1" runat="server" Width="800px">
<LocalReport ReportPath="Reports\Report1.rdlc">
<DataSources>
<rsweb:ReportDataSource DataSourceId="ReportOnUser" Name="ReportOnUser" />
</DataSources>
</LocalReport>
</rsweb:ReportViewer>
我添加了一个没有设计或xsd文件Report1.rdlc的rdlc文件。
答案 0 :(得分:0)
上面的代码工作得很好。唯一的问题是&#39; Microsoft.ReportViewer.WebForms&#39;添加的dll版本不同。