NHibernate vs Entity framework
nh胜出的地方
- linq语法很舒服,但是hql更强大,由于没有编译时检查,甚至可以在父对象使用子对象的属性
- 对于select n+1问题,nh的批量抓取是个不错的办法
- nh有二级缓存
- nh提供版本管理
- ef提供了一个设计器,有了这个设计器,ef在很多实际场合变成了关系数据的附庸,失去了ORM的本性
ef胜出的地方
- ef构造.net对象的速度比nh快
- ef是MS的,背后的人力财力不是nh能比的
- ef在medium trust level下工作正常,nh容易出问题
- nh学习成本太高