【问题标题】:NHibernate mapping - multiple reference to the same table from a single classNHibernate 映射 - 从单个类中对同一个表的多次引用
【发布时间】:2012-10-08 10:14:33
【问题描述】:

我有一个“人”类(其中包括)以下属性:

  • homeAddress(地址类型)
  • billingAddress(地址类型)
  • 地址(List 类型,包含此人的所有已知地址)

“地址”集合包含对该人所有已知地址的引用,包括由其他两个属性明确引用的两个地址(不是历史记录,只是“我可以找到”该人的位置列表,例如“奶奶家”或“办公室”)。也许这个人只有一个地址,被“家庭地址”、“帐单地址”和“地址”引用。

在数据库中,我将有一个表“people”,其中有一列“homeAddressID”和另一个“billingAddressId”,还有一个表“addresses”,其中只有“personId”(这里没有像“isHomeAddress”或“isBillingAddress”这样的标志)

我应该如何映射这个类?

【问题讨论】:

    标签: nhibernate mapping


    【解决方案1】:

    就这么简单

    public PersonMap()
    {
        References(x => x.HomeAddress, "homeAddressID");
        References(x => x.BillingAddress, "billingAddressID");
        HasMany(x => x.Addresses)
            .KeyColumn("personId");
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-09
      • 2014-06-07
      • 2012-03-13
      • 1970-01-01
      • 2010-11-13
      相关资源
      最近更新 更多