【问题标题】:Use .net object as data source in Crystal Report 2008在 Crystal Report 2008 中使用 .net 对象作为数据源
【发布时间】:2010-12-21 13:34:58
【问题描述】:

大家好,

我创建了一个 .net 对象(例如:A),其中包含从表中收集的数据。 接下来,我创建一个List<A>() 并传递给ReportDocument 对象的SetDataSource() 方法。 当我运行时,抛出异常:

"CrystalDecisions.CrystalReports.Engine.DataSourceException: The data source object is invalid"

我不知道上面的异常,错误消息不清楚。有人可以为我解释吗?例如:.net 对象必须从 ISerializable 继承.....

【问题讨论】:

    标签: .net datasource crystal-reports-2008


    【解决方案1】:

    我遇到了同样的错误,但在使用对象作为报表的数据源时遇到了它。我有以下代码:

    var myObj = new MyDataObject();
    cr.Load(@"C:\report.rpt");
    cr.SetDataSource(myObj);
    

    得到了同样的错误。

    将 SetDataSource 行更改为:

    cr.SetDataSource(new [] { myObj });
    

    帮助,它现在可以正常工作。 换句话说,尝试将您的对象包装在一个数组中。如果您使用的是列表,请先尝试将其转换为数组(使用 .ToArray() 方法)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-27
      • 2013-10-23
      • 2011-04-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多