将两个外键映射到一个主键(XML映射)

时间:2012-03-16 02:50:56

标签: nhibernate orm

我为此解决了很多问题,但唯一出现的是使用FH映射而不是XML-mappng的解决方案。 我正在使用QR扫描系统,两个用户可以互相扫描。如果一个用户向另一个用户射击,则他们的ID已填入此表中。 因此,两个FK将是独一无二的。 1-2。 2-1,1-3 所以我的域实际上包含这两个类:

public class SnappedUsers
{
    public virtual User Shooter {get; set;}
    public virtual User Target { get; set; }
    public virtual DateTime SnapDate { get; set; }
}
public class User : Entity
{
    public virtual string DisplayName { get; set; }
    public virtual string EmailAddress { get; set; }
    public virtual string Password { get; set; }
    public virtual string ProfilePicUrl { get; set; }
    public virtual int Money { get; set; }
    public virtual DateTime RegistrationDate { get; set; }
}

表SnappedUsers应包含User表中的两个外键。 (我没有必要将Shooter ISet和Target ISet放到我的用户类中。) 我如何实际使用XML映射映射这些东西?我现在还没有看到解决方案。

提前谢谢

1 个答案:

答案 0 :(得分:2)

<composite-id> 
  <key-many-to-one name="Shooter" column="shooter_Id" >
  <key-many-to-one name="Target" column="target_Id" />
</composite-id>