我来自我的 ORM 工具的实体框架和 LLBL 背景。
我被要求构建一个基于 NHibernate 的新系统。我从来没有这样做过,所以我以全新的眼光来看待它。
使用 Fluent NHibernate 进行映射和 NHibernate 中的“按代码映射”有什么区别?有偏好吗?
我来自我的 ORM 工具的实体框架和 LLBL 背景。
我被要求构建一个基于 NHibernate 的新系统。我从来没有这样做过,所以我以全新的眼光来看待它。
使用 Fluent NHibernate 进行映射和 NHibernate 中的“按代码映射”有什么区别?有偏好吗?
其中一些是偏好,其中一些是现有的代码库。曾经有一段时间,NHibernate 没有任何内置的非 XML 映射选项。有一些解决方案可以解决这个问题——例如 confORM、Fluent NHibernate 和其他我可能不知道的解决方案。
从 3.2 开始,我相信(也许是 3.0)NHibernate 现在有“代码映射”。与 Fluent NHibernate 相比,它的优势在于它不需要额外的库,并且由与 NHibernate 相同的团队支持。另一方面,Fluent NHibernate 更成熟一些(据我所知),可以支持更广泛的映射功能。
我还提到了“现有代码库”。显然,如果您有一个已经使用 Fluent NHibernate 映射的项目,最好继续使用它。如果您刚开始,也许值得尝试使用内置的“按代码映射”
我知道这篇文章已经过时了,但是对于其他对此感兴趣的人,我强烈建议您阅读此博客。它让我很清楚,它甚至还为您提供了两种方法之间的比较。
http://notherdev.blogspot.de/2012/01/nhibernates-mapping-by-code-first.html