【发布时间】:2011-04-22 17:06:14
【问题描述】:
您好,我想知道两者之间的区别,您为什么要使用其中的一种以及何时使用?
【问题讨论】:
标签: nhibernate
您好,我想知道两者之间的区别,您为什么要使用其中的一种以及何时使用?
【问题讨论】:
标签: nhibernate
您的对象模型不一定会一对一地映射到您的数据库模型,并且在大多数情况下会更丰富。组件是一种通过在对象模型中封装功能来丰富数据库模型的方法。例如,假设您有两个表,people 和 companies。这两个表都有address 所需的字段,但无论出于何种原因,数据库模式都没有addresses 的第三个表。在您的应用程序中,您可能希望将地址建模为一个单独的实体,即使它没有逻辑数据库表。在这里,您将使用一个组件,该组件允许您为地址投影数据库字段。
IUserType 是一种使用自定义序列化将类型映射到列的方法。例如,如果您要映射一个 mongodb ObjectId(只不过是一个 guid),您可以编写一个自定义的 IUserType 来进行映射。其他示例可能是将位掩码映射到丰富的用户类型数组或编码/解码加密字段。
【讨论】: