【发布时间】:2016-03-24 10:28:19
【问题描述】:
我必须制作一个 report.rdlc,我必须将数据集传递给它
我使用 C# 而非 SQLDATAADAPTER 制作了 DataTable,否则它可以填充为
adpt.fill(ds);
但我只有使用具有列和行的 c# 自定义构建的 DataTable 如何使其成为报告的数据源或使其成为数据集
【问题讨论】:
标签: c# .net datatable report datasource
我必须制作一个 report.rdlc,我必须将数据集传递给它
我使用 C# 而非 SQLDATAADAPTER 制作了 DataTable,否则它可以填充为
adpt.fill(ds);
但我只有使用具有列和行的 c# 自定义构建的 DataTable 如何使其成为报告的数据源或使其成为数据集
【问题讨论】:
标签: c# .net datatable report datasource
其实很简单... Dataset 只不过是“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”。
现在,当您开始在报表中添加控件时,表达式对话框将显示您的“已知”数据集(表实例)和相关字段。
【讨论】: