写点什么

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:204416
用户头像

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

关注

评论

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

Pro Git 阅读理解:Git 是如何实现的

yuanyxh

js #前端

35岁嫌老,65嫌年轻,程序员还有路子吗?

高端章鱼哥

吊打面试官!从多维度理解架构

不在线第一只蜗牛

程序员 面试

望繁信科技携流程智能解决方案亮相CNDS 2024新能源产业数智峰会

望繁信科技

数字化转型 流程挖掘 流程资产 流程智能 新能源产业

利用 FileSystem API 实现一个 web 端的残缺版文件管理器

yuanyxh

js #前端

什么是函数式编程

yuanyxh

js 函数式编程 #前端

职场女性的心灵救赎:数业智能心大陆照亮新曙光

心大陆多智能体

智能体 AI大模型 心理健康 数字心理 AI 智能体

延迟退休,程序员的你准备好了吗?

伤感汤姆布利柏

姿态逐渐“亲民” 2024年AI五大趋势备受期待

快乐非自愿限量之名

人工智能

深入浅出 GIF

yuanyxh

js GIF #前端

redux 源码学习

yuanyxh

js Redux #前端

JavaScript 概念 - 原型与继承

yuanyxh

js #前端

java springboot监听事件和处理事件

快乐非自愿限量之名

Java spring Spring Boot

数业智能心大陆探索生成式AIGC创新前沿

心大陆多智能体

智能体 AI大模型 心理健康 数字心理

大数据时代下会计数字化的思考与建议

EquatorCoco

大数据 低代码 数字化

记录一次关于 vuepress 滚动恢复的讨论

yuanyxh

js #前端

ETL数据集成丨建设BI的关键前提是ETL数据集成?

RestCloud

数据分析 BI ETL 数据集成 企业数据工具

c++临时对象导致的生命周期问题

快乐非自愿限量之名

c++

飞猪、去哪儿网接连“出事”,在线旅游平台有多少“坑”?

趣解商业

去哪儿网 飞猪 在线旅游平台

深度解析 MintRich 独特的价格曲线机制玩法

NFT Research

web3 NFT\

饿了么基于Flink+Paimon+StarRocks的实时湖仓探索

Apache Flink

大数据 flink 实时计算 StarRocks

upload 组件封装

yuanyxh

js 上传 #前端

快手自研Spark向量化引擎正式发布,性能提升200%

快手技术

spark 引擎 大数据 开源

【YashanDB知识库】单机升级典型问题及应急措施

YashanDB

yashandb 崖山数据库 yashandb知识库

阿里巴巴商品详情API返回值:电商精准营销的关键

技术冰糖葫芦

api 网关 API Gateway API 文档 API 测试 pinduoduo API

物流数字化:低代码推进供应链数字化进程

不在线第一只蜗牛

低代码 数字化 供应链 物流

业界首个AI安全产业图谱发布,移动云实力入选

科技热闻

AI耳机成智能硬件布局入口产品 科大讯飞无线智能耳机率先突围

科技热闻

typora & vscode 实现图片自动上传与云

yuanyxh

Typora js #前端

Detailed analysis of IPQ5332 and IPQ5322 WiFi 7 schemes

wifi6-yiyi

WiFi7

开发足球直播平台的成败:优化用户体验关键秘诀

软件开发-梦幻运营部

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