我是RDLC报告的新手,我有一个我认为应该支持的基本要求。但我无法找到具体的解决方案。所以请帮帮我。谢谢:))
我的报告的数据源是这样的对象:
class Order {
public string id {get; set;}
public int userid {get; set;}
public Address address {get; set;}
public List<Package> packages {get; set;}
}
class Address {
// Fields...
}
class Package {
public string pNumber {get; set;}
public string state {get; set;}
public List<Item> items {get; set;}
}
class Item {
public string itemName{get; set;}
// other fields...
}
我想做一个这样的报告:
+----------+-----------+----------+----------+
| OrderId | [orderId] | UserId | [userId] |
+----------+-----------+----------+----------+
| Address | [address line 1] |
+ +---------------------------------+
| | [address line 2] |
+----------+---------------------------------+
| Packages |
+--------------------------------------------+
| package1 | pNumber | [pnumber] |
+ +-----------+---------------------+
| | State | [state] |
+ +-----------+---------------------+
| | Items | ItemName | ItemSize |
+ + +----------+----------+
| | | item1 | 111 |
+ + +----------+----------+
| | | item2 | 222 |
+----------+-----------+----------+----------+
| package2 | pNumber | [pnumber] |
+ +-----------+---------------------+
| | State | [state] |
+ +-----------+---------------------+
| | Items | ItemName | ItemSize |
+ + +----------+----------+
| | | item3 | 111 |
+ + +----------+----------+
| | | item4 | 222 |
+----------+-----------+----------+----------+
那么我应该如何将数据集绑定到报告中呢?我使用报表生成器,只能将对象非列表字段绑定到它或只列出列表字段。欢迎任何想法/建议/示例。谢谢。
答案 0 :(得分:0)
看起来你需要将你的数据“扁平化”成一个DataTable并创建表(在rdlc报告,Tablix控件中),按订单,包和物品ID分组,其中各自显示订单,地址,包和物品详细信息组头。单个项目将列在表“详细信息”行中。
这也是完成你所描述的格式化的最简单方法。