惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
罗磊的独立博客
The GitHub Blog
The GitHub Blog
V
V2EX
Last Week in AI
Last Week in AI
博客园 - 聂微东
MyScale Blog
MyScale Blog
美团技术团队
L
LangChain Blog
博客园 - Franky
腾讯CDC
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园_首页
S
SegmentFault 最新的问题
爱范儿
爱范儿
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Stack Overflow Blog
Stack Overflow Blog
量子位
小众软件
小众软件
宝玉的分享
宝玉的分享
J
Java Code Geeks
Google DeepMind News
Google DeepMind News
D
Docker
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报

博客园 - wljcan

用户中心 - 博客园 FMEFB开始上传 代码实现的事件响应 UIAlertView的使用方法 开始新的学习历程--ios开发 nod32 制作的手机电子书UMD文件编辑器 关于IOC 精彩的讨论《数据库时代的终结 》 Oracle开发中,关于查询的一个问题 使用NHibernate时需要考虑的另一个问题 使用NHibernate时,如何提高访问Oracle数据库(ODP.net)的性能 在Google 上搜书的方法 (转) - wljcan 一个NHibernate的好工具---Query Analyzer 在PowerDesigner中生成SQL脚本时,如何生成备注信息? 北京公司招聘 .net开发人员 ArrayList中的排序 .net使用Com组件的问题 应用中的安全管理方案
关于crystal report和NHibernate应用的一个问题
wljcan · 2005-05-13 · via 博客园 - wljcan

前段时间一直使用Nhibernate做项目的开发,将业务部分实现完成之后,开始做报表部分的功能,此前参考了很多web上做Report的工具,如Devexpress.web.report,ActiveReport for .net以及目前的crystal report,Devexpress的web report方案刚刚出来,而且没有源代码,不够成熟;activereport是 基于activeX技术,应用起来也不理想,最后选择了Crystal report professional 11.0。

我最初的想法是:在Crystal Report Designer中设计rpt,然后在业务系统中,将NHibernate查询的IList结果绑定到Crystal Report。但是经过短时间的摸索,发现存在一些问题。

Crystal Report designer在设计rpt的时候,通常需要设置DataBase Fields,我选择了“Field definitions only”(由于使用Nhibernate,不可能使用Ado.net的方式),定义 field definitions file后,设计报表,保存rpt文件。

在系统中,我使用了如下的方式来显示报表:
ReportDocument rdSuppliers = new ReportDocument();
rdSuppliers.Load(@"...rpt");
IList list= NhibernateControl.GetEntities("...");
rdSuppliers.SetDataSource(list);
CrystalReportViewer1.ReportSource=rdSuppliers;

系统运行时,在rdSuppliers.SetDataSource(list)处抛出例外:

The data source object is invalid.

是不是在Crystal Report中不能绑定IList?  特别注明:在DataGrid中绑定NHibernate的结果集是没有问题的。
 
本人对Crysatl Report 不熟,希望有经验的朋友提点意见。