在有子报表的情况,有时候会报找不到 subreport1 ,请查看是否发布等信息。这个时候需要将主报表和所有的子报表都用stream方式加载到页面
有时候,根据项目的需要,需要将项目需要的几个子报表集成到一个主报表中,就要在主报表里插入子报表。并在【将此报表用作子报表】输入框中写入要添加的子报表名称(备注:名称不要加RDLC。
1:如果添加的子报表为静态报表(子报表里面的内容一致不变),需要将子报表和主报表放在同一目录,否则出现找不到的情况
2:如果增加的子报表是动态报表(子报表里的内容会在运行时候随着后台数据的不同,发生变化),需要将主报表和子报表都通过stream加载到reportview中,具体代码如下:
ReportViewer1.Reset();
StreamReader mainstream = new StreamReader(Server.MapPath("~\\主报表.rdlc"));
ReportViewer1.LocalReport.LoadReportDefinition(mainstream);
mainstream.Close();
if (ReportViewer1.ShowReportBody == false)
{
ReportViewer1.ShowReportBody = true;
}
static List<string> _reportNameList =