【发布时间】:2008-12-18 03:07:21
【问题描述】:
我研究过 NHibernate 和 EntitySpaces,它们的工作方式似乎不同。
在 EntitySpaces 中,您定义数据库表和表关系,并为您生成类。
在 NHibernate 中,您定义类并为您生成表关系。这就是我要找的。p>
是否有任何其他 ASP.NET ORM 可以从 NHibernate 等类生成表? 有什么建议吗?
【问题讨论】:
-
从对象端开始并自动生成数据库端对我来说似乎是一个非常糟糕的主意。它不可能产生一个“好的”数据库设计。只是我的 2c
-
但是反过来,它不会生成好的对象模型!
-
我理解你的问题,但是根据自动生成表关系的能力选择 ORM 可能是个坏主意。我总是不得不调整设计器/生成器的输出。
-
这取决于您认为模型的“主要”具体化是什么。您的数据库模型是主要的,对象模型是派生的,或者相反。
-
nhibernate 不会自己生成 db 模型,你仍然需要做对象属性到 db 字段的映射,定义它的数据类型等等。在你完成这个 nhibernate 之后,你可以选择在指定的 dbms 中自动创建 db 模型。 db 模型的好坏仍然取决于您:)