NHibernate-映射连接表&;反向引用

NHibernate-映射连接表&;反向引用,nhibernate,many-to-many,Nhibernate,Many To Many,哎,, 我必须映射以下实体: class Document { public int DocumentId { get; set; } public DocumentList ContainingList { get; set; } } class DocumentList { public int DocumentListId { get; set; } public DateTime LastUpdateTime { get; set; } public IL

哎,, 我必须映射以下实体:

class Document
{
   public int DocumentId { get; set; }
   public DocumentList ContainingList { get; set; }
}

class DocumentList
{
   public int DocumentListId { get; set; }
   public DateTime LastUpdateTime { get; set; }
   public IList<Doucment> Documents { get; set; }
}
因此,我对tohught的映射如下:

enter code here

<class name="DocumentList" table="TB_DOC_LIST">
  <id name="DocumentListId">
    <column name="DOC_LIST_ID"/>
    <generator class="assigned" />
  </id>
  <property name="LastUpdateTime" column="DOC_LIST_UPDATE_TIME ">
  <set name="Documents" table="TB_LIST_AND_DOCS">
    <key column="DOC_ID"></key>
    <one-to-many class="Document" />
  </set>
 </class>
在此处输入代码
以及:


[???]-引用“所有者”文档列表的属性
现在,按照已知的模式,我不知道如何映射从文档到文档列表的反向链接,因为我这里有一个“weired |一对多关系,被第三个表打破。 我也不希望一个文档对象引用一个IList来解决这个问题,因为每个文档只有一个这样的“所有者”文档列表。
有什么好主意吗?我在这里误解了什么?

现在无法测试它,但是可以使用连接来获取引用id

<class name="Document" table="TB_DOC">
  <id name="DocumentId">
    <column name="DOC_ID"/>
    <generator class="assigned" />
  </id>

  <join table="TB_LIST_AND_DOCS">
    <key column="DOC_ID"/>
    <many-to-one class="DocumentList">
      <column name="DOC_LIST_ID" />
    </many-to-one>
  </join>

</class>

 <class name="Document" table="TB_DOC">
   <id name="DocumentId">
     <column name="DOC_ID"/>
     <generator class="assigned" />
   </id>

   [ ??? ] - property to reference the "owner" document list

 </class>
<class name="Document" table="TB_DOC">
  <id name="DocumentId">
    <column name="DOC_ID"/>
    <generator class="assigned" />
  </id>

  <join table="TB_LIST_AND_DOCS">
    <key column="DOC_ID"/>
    <many-to-one class="DocumentList">
      <column name="DOC_LIST_ID" />
    </many-to-one>
  </join>

</class>