NHibernate与EF4 - 低端计算机的性能

时间:2010-02-28 19:46:10

标签: nhibernate entity-framework-4

我正在开发一个可在Netbook计算机上运行的小型Windows窗体应用程序。我将控制硬件/环境,这意味着我向最终用户提供硬件和软件。它将在本地驱动器上有一个只有这个应用程序才能访问的数据库。它将在其中一个表中有几个表和几百行(或者几千行)。没有外键等真的很简单。我只需要一个存储这些数据并执行简单查询和映射到对象(ORM)的地方。

我理解Nhibernate和EF4的基础知识,并对两者进行了一些实验。如果我决定使用EF,我会使用EF4和POCO。

我认为性能不是问题,因为它只有少量数据。但是,上网本并不是真正的强大,所以我想知道这两种产品中哪一种能为我提供更轻量级的解决方案。

我们是微软的商店,还没有使用EF4,但我认为我们可能会以这种方式成为未来的数据引擎,所以这可能会影响我的决定。但是这个应用程序是一个独立的岛屿,所以我可能会使用nhibernate而不会有太多的政治后果。 :)我对EF4及其巫师和发生器以及魔法的总体印象是它的臃肿。我可能错了,但那就是我得到的感觉。我不想选择EF4并发现它对我上网本的表现造成了压力。

欢迎任何评论。我知道这是一个广泛的主题。 ;)

2 个答案:

答案 0 :(得分:3)

我不认为两者之间的差异甚至可以通过少量数据来衡量。 sql查询本身将比orm完成的工作花费更长的时间。

是的,这是一个广泛的主题。您只会知道测量时使用的确切情况的区别。

就个人而言,我根本不会使用orm来表示几张桌子。 在遇到性能问题之前,我也不会考虑性能。

答案 1 :(得分:2)

我喜欢NHibernate,并且仍然等待EF给我留下深刻印象,但对于你不那么复杂的应用程序,我不会同时使用它们。

相反,我建议使用Linq2Sql,这是最简单的解决方案,而且足够强大。

我认为NHibernate和EF适用于更复杂的应用程序