Asp.net RDLC报表查看器钻取报表
我在MSDN论坛上发布了这个问题 但我没有得到任何回应。你能帮帮我吗。我真的被这个相当简单的任务困住了 我的代码似乎是正确的,但我还是得到了正确的答案 尚未为数据源“DataSet1\u Order\u Details”提供数据源实例Asp.net RDLC报表查看器钻取报表,asp.net,rdlc,reportviewer2008,Asp.net,Rdlc,Reportviewer2008,我在MSDN论坛上发布了这个问题 但我没有得到任何回应。你能帮帮我吗。我真的被这个相当简单的任务困住了 我的代码似乎是正确的,但我还是得到了正确的答案 尚未为数据源“DataSet1\u Order\u Details”提供数据源实例 对不起,交叉邮寄 我也有同样的经历,那是因为我试图从错误的地方看到报告,让我解释一下 RDLC报告中有一个数据集 DAL中有一种从数据库获取数据的方法 BAL或UI中有一个方法调用DAL方法并填充数据集。大多数情况下,这是一个独特的页面,它从用户处获取一些参数
对不起,交叉邮寄 我也有同样的经历,那是因为我试图从错误的地方看到报告,让我解释一下
- RDLC报告中有一个数据集
- DAL中有一种从数据库获取数据的方法
- BAL或UI中有一个方法调用DAL方法并填充数据集。大多数情况下,这是一个独特的页面,它从用户处获取一些参数并填充数据集,最后将用户重定向到报表查看器页面
- 您的eror将显示在报表查看器页面中
- 直接进入reportviewer页面而不填充数据集
- 您转到了正确的页面并填充了数据集,但在report viewer页面中,您没有以代码隐藏方式将数据集绑定到报表
- 在某些情况下,这可能是因为会话过期
- 我解决了这个错误
我正在添加数据源,如
this.ReportViewer.Localreport.DataSource.Add
(new RemoteDataSource("DataSet1_Order_Details", ObjectDataSource2.ID));
相反,应按以下方式添加数据源
DataSet1TableAdapter.OrderDetails od = new DataSet1TableAdapter.OrderDetails();
((LocalReport)e.report).Datasources.Add(new RemoteDataSource("DataSet1_Order_Details", od.get(orderid))
这解决了问题,现在我可以在Reotviewer报告中进行深入研究
问候,,
阿披舍克这对我也起了作用,尽管真正的关键就在这里:
((LocalReport)e.report)
就我而言,我正在使用:
((LocalReport)e.report).LoadReportDefinition(report_stream);
foreach (ReportParameter rp in ((LocalReport)e.report).OriginalParametersToDrillthrough)
{
_paramCollection[rp.Name].parameterValue.AddRange(rp.Values.OfType<string>());
}
DataTable newData = GetData();
ReportDataSource rds = new ReportDataSource();
rds.Name = _datasetName;
rds.Value = newData;
((LocalReport)e.report).DataSources.Add(rds);
((LocalReport)e.report).LoadReportDefinition(报告流);
foreach(报告参数rp in((LocalReport)e.report).OriginalParametersToDrillthrough)
{
_paramCollection[rp.Name].parameterValue.AddRange(rp.Values.OfType());
}
DataTable newData=GetData();
ReportDataSource rds=新的ReportDataSource();
rds.Name=_datasetName;
rds.Value=newData;
((LocalReport)e.report).DataSources.Add(rds);
reportviewer处理其余部分@知道的不多,感谢您的指导。我没有进入报表查看器,而是填充数据集。我的第一份报告看起来很完美。当我点击链接时,我有一个钻取事件处理程序,我会尽一切努力填充数据集。看看我发布的代码和截图。