3

对于即将到来的项目,C# 代码需要围绕旧版 Oracle 数据库编写。它将非常以数据为中心,因为大部分代码将处理数据操作——几乎没有业务规则。所以我决定不使用成熟的 ORM 并选择 Active Record 方法。

我遇到了两个选择:SubSonicCastle ActiveRecord

谁有这两种实现的经验?当我在它们之间进行选择时,我应该考虑哪些因素?哪个更稳定/更快/更容易合作/拥有良好的支持社区?

我很高兴得到一些决策指导。

4

1 回答 1

7

SubSonic 和 NHibernate(Castle ActiveRecord 建立在其上)都是成熟的 ORM。

NHibernate 通常比 SubSonic 更成熟,功能更丰富。它有一个更大的用户和贡献者社区。

亚音速的加速时间更快。

另请参阅(请注意,阅读更多不一定会让您的决定更容易,实际上可能会适得其反):

在 NHibernate 或 Vice Versa 之前学习 SubSonic?

亚音速与 NHibernate

http://ayende.com/Blog/archive/2007/06/03/On-SubSonic-amp-NHibernate.aspx

http://subsonicproject.com/docs/Comparisons

请注意,关于您将看到的一些名称:Ayende Rahien 是 NHibernate 的贡献者,Rob Conery 是 SubSonic 的贡献者。

NHibernate 是“安全”的赌注,因为它很可能能够处理你发送的任何奇怪的东西。只要您的设计正确,您就可以从 SubSonic 开始,然后在必要时将其替换为 NHibernate(这将涉及一些重新编码成本)。

这个决定最终取决于你自己的情况。

于 2009-09-25T08:59:32.507 回答