如何使用c#用自定义构建的DataTable填充数据集

本文关键字:DataTable 填充 数据集 构建 自定义 何使用 | 更新日期: 2023-09-27 18:27:22

我必须制作一个report.rdlc,其中我必须将数据集传递给它

我有使用C#而不是SQLDATAADAPTER制作的DataTable,其他方面它可以填充为

      adpt.fill(ds);

但我只有使用c自定义构建的DataTable,它有列和行如何使其成为报表的数据源或使其成为数据集

如何使用c#用自定义构建的DataTable填充数据集

实际上很简单。。。数据集不过是"DataTable"实例的集合。你应该可以通过。。

var DS = new DataSet();
YourCustomPopulatedDataTable.TableName = "SomeTable";
DS.Tables.Add( YourCustomPopulatedDataTable );

*所做的是创建了一个基线"ReportManager"类,但在我取回数据集后,我编写了XML输出,也编写了类似的XSD

DS.WriteXmlSchema( "MyXYZReport.xsd");   // the report will get this in a moment
DS.WriteXml( "MyXYZReport.xml");

然后,修改您的项目并添加创建的".xsd"文件,这样您就不必对报告的架构指手画脚。因此,第一次通过时,我查询数据,生成XSD/XML,并在实际报告之前停止。然后,修改项目并将XSD添加到其中。

现在,打开你的rdlc。在左侧应该有一个"报告数据"面板。如果没有,请单击报告中的任何位置,但不要单击特定对象。刚好可以让你关注.RDLC。然后,点击菜单中的"查看",最后一项应该显示"报告数据"选项。一旦显示,它将显示数据的来源、参数、图像、数据源、数据集等。

单击"数据集",右键单击"添加数据集"并选择添加到项目中的XSD。这将显示一个对话框,提示"名称"在报告中引用,然后是数据源。数据源应列出名称,例如"MyXYZReport"。下面将是"可用数据集",并具有数据集中表的名称。请注意,在编写XSD之前,我在上面对表的"名称"做了一行更改。无论该名称是什么("SomeTable"),都应列在可用数据集中。选择它。然后,出于我的目的,我将数据集的"名称"(对话框中的第一个字段)更改为相同的值"SomeTable"。这样,我就不会猜测哪个名字是哪个了。他们都会称之为"SomeTable"。

现在,在报告中,当您开始添加控件时,表达式对话框将显示您的"已知"数据集(表实例)和相关字段。