加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

.net – ORM(特别是NHibernate)性能的复杂查询

发布时间:2020-12-14 16:37:13 所属栏目:Java 来源:网络整理
导读:我公司正在从零开始重写现有应用程序.此应用程序以及其他任务针对订单和发票数据执行复杂的SQL查询以生成销售报告.查询根据用户选择的标准动态构建,因此如果选择了多个标准,它们可能非常复杂.目前,表现是体面的,但不是很大. 现在,对于新版本,我们希望使用一
我公司正在从零开始重写现有应用程序.此应用程序以及其他任务针对订单和发票数据执行复杂的SQL查询以生成销售报告.查询根据用户选择的标准动态构建,因此如果选择了多个标准,它们可能非常复杂.目前,表现是体面的,但不是很大.

现在,对于新版本,我们希望使用一个ORM,可能是NHibernate,因为它显然是唯一支持Oracle Lite的应用程序(应用程序使用Oracle或Oracle Lite,具体取决于它是以连接模式还是断开模式运行).但是我担心NHibernate生成的查询的性能.我在之前(Linq to SQL,Entity Framework)中与其他ORM合作,但是查询很简单,所以没有性能问题.

所以,在我决定使用ORM或使用简单的SQL之前,我想知道这些工具如何处理诸如外部连接,子查询等的情况.你认为ORM(尤其是NHibernate)是适用于上述报告情况?我应该担心复杂查询的性能吗?

任何反馈将不胜感激

解决方法

见 this chart.现在没有DataObjects.Net,但是与EF和NHibernate比较的结果如 here所示.

EF的LINQ测试代码为here;其他工具的版本可以在同一个文件夹中找到.所有这些.cs文件都是由a single T4 template生成的,因此测试完全相同.使用的模型是Northwind.

更多链接:

> LINQ test description
> FAQs.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读