1

我已经填写了数据表。我想在报告中显示它。我正在这样做:

ReportDataSource source = new ReportDataSource("dtss", dt);
ReportViewer1.LocalReport.DataSources.Clear();
ReportViewer1.LocalReport.DataSources.Add(source);
ReportViewer1.DataBind();
ReportViewer1.LocalReport.Refresh();

但是当我尝试构建时,我得到了错误:

数据集“DataSet1”指的是不存在的数据源“”。

我错过了什么?使用 Webforms(ASP.net)

4

2 回答 2

2

您为 ReportDataSource 提供的名称需要与 DataSet 的名称(在报告中定义)相匹配。例如,在第 1 行(您的代码,上面),您需要说:

ReportDataSource source = new ReportDataSource("DataSet1", dt);

或将数据集(在您的报告中)重命名为“dtss”

于 2012-07-26T19:50:37.887 回答
0

选择。

显然,如果您在 rdlc 文件中添加一个 DataSet,它会自动关联 xml 中的名称,并且当您从 rdlc 中删除它时,它不会从 xml 中删除它,因此它只会为您提供它认为的参考空数据集,无法评估。我首先将我的第二个命名为 DataSet2,然后在设计中对其进行设置后决定将其删除并重命名,但您必须返回 xml 并删除整个空的 DataSet 节点<>。希望这可以帮助那些无法通过上述答案解决问题的人。

于 2013-07-08T14:14:30.357 回答