将具有List <>的对象绑定到Crystal Report

jwa*_*ech 6 c# crystal-reports visual-studio-2008

我有一个包含一些属性的类,包括一个子对象的List <>.

简单示例:

    public class LineItem
    {
       public string Name { get; set; }
       public decimal Amount { get; set; }
    }

    public class Invoice
    {
       public string Name { get; set; }
       public DateTime CreatedDate { get; set; }
       public List<LineItem> LineItems { get; set; }
       public Invoice() { ... }
    }
Run Code Online (Sandbox Code Playgroud)

我正在尝试将此对象(示例中的Invoice)绑定到Crystal Report(使用VS2008水晶报表设计器),并且当我获得要在Field Explorer中显示的简单属性(Name,CreatedDate)时,子集合不会.我已经尝试使用ArrayList(如建议的那样(我如何使用强类型列表作为Crystal Reports的datasoruce),但这不起作用.

jwa*_*ech 1

经过一番搜索和试验后,我未能成功尝试将报告绑定到包含子集合的自定义对象。我没有使用 .Net 对象,而是使用 XSD shema 设计报告,并在运行时生成一个 xml 文件,并将成本报告的数据源设置为我使用 .ReadXML 方法构建的数据集。

var exportData = new XDocument(....);
var dataSet = new System.Data.DataSet();
dataSet.ReadXml(exportData.CreateReader());

var report = new ReportDocument();
report.Load("...");
report.SetDataSource(data);
Run Code Online (Sandbox Code Playgroud)