在运行时动态生成RDLC报告定义的最佳方式是什么?

问题描述:

我有数据将由用户在运行时通过执行查询生成。数据的形状是未知的,因为用户可以选择要恢复的字段。在运行时动态生成RDLC报告定义的最佳方式是什么?

该应用程序是一个ASP.NET MVC网络应用程序。数据将是.NET POCO。但是,每个对象都可以具有其他对象的集合的属性。

我想为报告使用RDLC格式,以便我可以利用PDF,Excel,Word等导出功能。

我设想数据显示在一个网格中,嵌套网格的集合属性。

  1. 生成RDLC数据有哪些选择?
  2. RDLC是否可以处理嵌套表/网格以满足我的收集属性要求?

我在一年前调查了这个主题,搜索一个对象模型来在内存中生成RDL。没有一个,但有传言。现在快速调查:存在称为RDLOM的对象模型,但是isn’t really supported by Microsoft

我的实际做法是使用self generated object model build upon RDLs scheme

这是一个不太理想的解决方案,因为您需要详细了解生成的对象,因为对象创建代码真的很难看。但是我在调​​查中发现的其他解决方法是直接使用XML或XSLT来生成RDL,而且它们很穷。

+1

感谢您的回答。在努力让RDLC为我工作之后,我完全抛弃了它,并且使用iTextSharp手工制作了生成PDF的代码。起初我并不喜欢它,因为它“感觉不太对劲”,但事实证明,这比RDLCs更容易。 – GiddyUpHorsey 2010-08-16 11:03:38