使用Fluent NHibernate或NHibernate处理复杂关系的复杂数据库。

3

我有一个关系复杂的数据库。我想知道对于我的项目来说使用Fluent NHIbernet还是只用NHibernate更好。我知道Fluent在自动映射等方面更好,但是当我有真正复杂的数据库关系时,将来会遇到一些问题吗?Fluent NHibernate有一些限制吗?在配置过程中是否会出现一些问题?Fluent NHibernate会比NHibernate慢吗?


我不会把那称作是一个大型数据库。当你涉及到数百个甚至数千个表时,我会开始担心性能问题,但前提是在看到一些代码之后才会考虑这个问题。它们很容易进行比较。 - Bob G
对不起,我的数据库不是很大,但我有复杂的关系。所以我想问一下,如果我的数据库中有很多数据,并且进行了一些复杂的查询,性能会有所差异吗? - Eduard Baraniak
2个回答

6
如果我说错了,请有人纠正我,但我认为在幕后,流利的nhibernate会创建xml映射文件,这些文件会被加载到nhibernate中。
您可以配置流利的nhibernate来处理ClassMap<>和基于xml的.hbm.xml映射文件。如果您遇到流利的nhibernate无法处理的情况,则可以在需要时回退到xml映射文件。流利的nhibernate映射的优点是更容易重构您的POCO类,因为您具有编译时检查,而xml映射只有在运行时才能知道是否存在问题。

1

这个问题并不具有建设性。NH和FluentNH之间唯一的区别在于XML绑定定义与代码内绑定定义。FluentNH仅定义了模式,对ORM逻辑本身没有任何影响 - 它仍然是NHibernate。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接