2010-08-06 106 views
0

你好,希望有人能幫助我解決這個問題。2個外鍵映射到相同的主鍵問題

我有一種情況,我有: 存儲我所有用戶(包括管理員)的用戶實體。 評論實體,存儲所有針對用戶的評論。

我的問題是我還在評論實體中存儲發表評論的管理員的用戶標識。所以現在我有評論實體有2個userId字段,並且在檢索用戶實體時它不會獲取任何關聯評論。

我的映射代碼如下:

內的用戶實體..

<set name="MemberComments" cascade="all-delete-orphan" inverse="true"> 
    <key column="UserCommentId"/> 
    <one-to-many class="IlluminatiCoreUserComment"/> 
</set> 

內UserComment在實體

<id name="UserCommentId"> 
    <generator class="identity"/> 
</id> 
<many-to-one name="User" class="IlluminatiCoreMember" column="UserId" not-null="true"/> 
<property name="Comment" not-null="true"/> 
<property name="CreatedTimeStamp" not-null="true"/> 
<property name="ModifiedTimeStamp" not-null="true"/> 
<many-to-one name="CommentedByUser" class="IlluminatiCoreMember" column="CommentedByUserId" not-null="true" inverse="false"/> 

我怎樣才能在用戶實體點內作出MemberComments只是用戶多對一的領域?

感謝您的幫助提前

回答

0

在用戶<key>元素應該有FK到用戶,不UserComment在的ID。

換句話說,與多對一UserId相同的列。