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学习成本太高
posted @ 2011-08-16 20:24  梦幻泡影  阅读(842)  评论(1编辑  收藏  举报