NHibernate(不是流利的NH) - 是否可以重用组件?

时间:2010-06-29 12:20:21

标签: nhibernate

有没有办法在多个映射中重用NHibernate组件(< component>)? 例如:Employee和Customer类中的Address类 - 我现在看到的唯一方法是将Address组件映射从一个类映射复制粘贴到另一个类映射中。

3 个答案:

答案 0 :(得分:1)

我没有尝试使用NHibernate,但是它使用了另一个使用XML配置文件的OR Mapper。在其自己的XML文件中创建组件映射,然后在使用该组件的XML文件中使用XML external entity来引用它。这是我的公司映射文件的片段:

<!DOCTYPE mappings [
    <!ENTITY Address SYSTEM "MyCompany.MyApplication.Mappings.Address.xml">
]>

<mappings version="4.2" defaultNamespace="MyCompany.Model" defaultSchema="dbo">
    <entity type="Company" table="Company" keyMember="CompanyId" keyType="Auto">
    &Address;

答案 1 :(得分:1)

除了Jamie提出的解决方案之外,使用基于代码的映射提供了更好的重用可能性。

目前,有两个此类项目Fluent NHibernateConfORM

答案 2 :(得分:0)

不幸的是没有。我也真的需要这个功能;)