我在MSDN论坛上发布了这个问题
但我没有得到任何回应。你能帮我么。我真的很难接受这个相当简单的任务。
我的代码似乎是正确的,但我仍然得到了
尚未为数据源'DataSet1_Order_Details'提供数据源实例。
对不起,发布邮件......
答案 0 :(得分:0)
我有同样的经历,这是因为我尝试从错误的地方取得报告,让我解释一下
所以可能发生以下情况
答案 1 :(得分:0)
我解决了错误。
我正在添加数据源,如
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))
这解决了这个问题,现在我可以在ReortViewer报告中深入了解。
此致 阿布舍克巴克
答案 2 :(得分:0)
这也适合我,虽然真正的关键就在这里:
((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);
reportviewer处理剩下的事情。 @Knows Not Much,感谢领导。