【ArchSummit】如何通过AIOps推动可量化的业务价值增长和效率提升?>>> 了解详情
写点什么

NHibernate Linq 1.0 发布

  • 2009-07-27
  • 本文字数:906 字

    阅读完需:约 3 分钟

不久之前, NHibernate Forge 宣布 NHiberante Linq 1.0 正式发布了。NHibernate 以其灵活的 O/R Mapping 功能成为了.NET 领域最有影响力,运用最广的 ORM 框架之一,它在某些社区群体的受欢迎程度甚至超过了微软官方的的 LINQ to SQL 及 Entity Framework。作为 NHibernate 团队的重要成员, NHibernate Profiler 项目的创始人 Ayende Rahien 一直致力于将 LINQ 这种高效的开发方式与 NHibernate 强大的功能进行结合。他也在博客中公开了 NHibernate Linq 1.0 正式发布的消息

过去几年,社区中呼声最高的功能便是 Linq 支持了,这里我很兴奋地宣布,NHiberante Linq 1.0 已经正式发布了。

NHiberante 的 Linq 支持基于 NHibernate Contrib 中的 Linq Provider,它已经通过了一些现有项目的考验。虽然我们还没有确定何时将其合并至 NHiberante 中,但是项目团队认为现在已经可以给用户提供产品环境质量保证的 Linq 支持了。

这次的 Linq 覆盖所有 Criteria API 的功能。由于 Criteria API 的功能有限,我们没有提供对 group join 和子查询的支持。不过 NHibernate Linq 在过去几年中多次经历了产品环境的测试,大部分人认为可以满足他们的需要。

值得注意的是,这并不是社区中唯一的 NHibernate Linq Provider 实现。 Steve Strong 也提供过一个名为 LINQ to NHibernate 的项目,您可以在 NhAddins 中获得它的代码。与前者不同的是,LINQ to NHibernate 使用了类似于 Java Hibernate 中基于 ANTLR 的方法,而 NHibernate Linq 则将 Linq 表达式转化为 Criteria API。

两套不同的 Linq Provider 实现也引起了一些评论。有人认为双方应该合作,提示用户哪些功能会产生兼容问题,例如将一些 API 标记为过期,或者将它们转移到其他命名空间下面。对此,Steve 回答道:

我目前还没有改变的打算。我经常对(NHibernate Linq)项目的作者说,基于 Criteria API 的做法会限制它的功能。我打算实现一个基于 AST 的 Linq Provider,不过这还处于计划过程中。我们会追求一定程度上的兼容,但是我认为,如果要获得一些优势的话,难免会出现破坏性的改变。

您可以在 NHibernate 项目的文件列表中下载NHibernate Linq 组件,也可以通过 InfoQ 中的专题了解更多有关 NHibernate 内容。

2009-07-27 04:204333
用户头像

发布了 157 篇内容, 共 52.7 次阅读, 收获喜欢 6 次。

关注

评论

发布
暂无评论
发现更多内容

【LeetCode】子集问题debug模式查看数据变化

Albert

算法 LeetCode 2月春节不断更

区块链--另一场改变社会组织方式的工业革命

CECBC

区块链

硬核!八张图搞懂 Flink 端到端精准一次处理语义 Exactly-once(深入原理,建议收藏)

五分钟学大数据

大数据 flink

精美的淘客项目完全开源啦,确定不来围观吗

Silently9527

Vue mybatis springboot uniapp

看完字节大佬的算法刷题宝典,我直接手撕了500道算法算法题

程序员 面试 算法

静默安装Oracle也没那么恐怖

MySQL从删库到跑路

oracle

管理笔记[4]:组织管理的目标就是实现1+1>2

L3C老司机

翻译:《实用的Python编程》README

codists

Python

学习计算机视觉

IT蜗壳-Tango

OpenCV 计算机视觉 2月春节不断更

「抖音同款播放器」上市:有效解决卡顿、黑屏和模糊

字节跳动技术团队

架构训练营大作业(二)

一期一会

区块链在数字版权领域的应用发展报告(2020)

CECBC

版权保护

「产品经理训练营」作业03:利益相关方识别

狷介

产品经理训练营

一文看完TCP/IP协议基础知识点

分页方式,看这一篇就够了。

大伟

分页

京东支付SDK重构设计与实现

京东数科风险算法与技术

《学会写作》学习笔记之如何拟标题

JiangX

28天写作

中国为什么加快推进数字人民币

CECBC

数字货币

架构训练营大作业(一)

一期一会

Spring - IOC

小马哥

Java 架构师 spring 5 七日更

Java并发包源码学习系列:阻塞队列实现之SynchronousQueue源码解析

Java 编程

不会开发的你也能管理好企业漏洞,开源免费工具:洞察(insight II)

BigYoung

安全 安全漏洞 28天写作 2月春节不断更

批判性思维自修课(六)

石君

28天写作 批判性思维

产品训练营第三次作业

Geek_79e983

翻译:《实用的Python编程》00_Setup

codists

Python

为啥写的mybatis插件没用?一场mybatis插件加载机制的探索之旅

altantisor

spring Boot Starter mybatis源码

夕四今晚加班到2点30,而王二还不打算走《打工人的那些事》

谙忆

架构师训练营第十周作业

zamkai

科技,亲吻这个特别的春节

脑极体

PanoVideoCall 的 Electron Demo 开源了

拍乐云Pano

html Mac windows Electron js

28天瞎写的第二百三十五天:客服得有多专业?

树上

28天写作

NHibernate Linq 1.0发布_.NET_赵劼_InfoQ精选文章