【问题标题】:Datatable as datasource in ReportViewer数据表作为 ReportViewer 中的数据源
【发布时间】:2012-07-28 08:45:41
【问题描述】:

我希望reportviewer 控件中的表格组件填充数据表中的数据。换句话说,我想使用数据表作为reportviewer 控件的源。我尝试创建数据集,添加了数据表,其中包含我的数据表在编程填写后将具有的确切列。然后我使用了以下代码:

 DataTable dt = new DataTable();
 dt.TableName = "DataTable1";
 conn.Open();
 adapter.Fill(dt);
 ReportViewer1.ProcessingMode=ProcessingMode.Local;
 ReportDataSource source = new ReportDataSource("SampleDs", dt);
 ReportViewer1.LocalReport.DataSources.Clear();
 ReportViewer1.LocalReport.DataSources.Add(source);
 ReportViewer1.DataBind();
 ReportViewer1.LocalReport.Refresh();

但是,这不起作用。我得到的唯一消息是:

报告处理过程中发生错误。 SampleDs。

谁能告诉我如何解决问题或指出创建此类报告的完整过程的参考文献,

【问题讨论】:

    标签: c# .net datatable reportviewer


    【解决方案1】:

    您为ReportDataSource 对象的构造函数使用的重载需要在第一个参数中使用数据源的名称。你不提供这个,你需要 DataTable 名称。

    将您的代码更新为此,您应该可以:

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

    【讨论】:

    • 谢谢,为我工作。另一个问题:如果我想再添加一个字符串值来报告,是否可以不将此值添加到数据表中?
    • @seeker 老实说,我对 ReportViewer 不是很熟悉,所以我不确定。尝试一些事情,如果你不能让它工作,回到 SO 并打开另一个问题,显示你的代码和你遇到的问题。当然,向 DataTables 添加数据非常容易,所以也许你应该考虑这样做。
    猜你喜欢
    • 2016-02-16
    • 2013-06-21
    • 2010-10-27
    • 2013-02-04
    • 1970-01-01
    • 2011-02-20
    • 1970-01-01
    • 1970-01-01
    • 2021-12-09
    相关资源
    最近更新 更多