Nhibernate 计算外键属性

Nhibernate 计算外键属性,nhibernate,fluent-nhibernate,Nhibernate,Fluent Nhibernate,我有一个名为Password的类: public class Password { public virtual int PasswordID { get; set; } public virtual int UserID { get; set; } public virtual User User { get; set; } } 加载时自动从UserID属性检索属性用户: public PasswordMap() { Table("Password");

我有一个名为Password的类:

public class Password {
    public virtual int PasswordID { get; set; }
    public virtual int UserID { get; set; }
    public virtual User User { get; set; }
}
加载时自动从UserID属性检索属性用户:

public PasswordMap() {
    Table("Password");
    LazyLoad();
    Id(x => x.PasswordID).GeneratedBy.Identity().Column("PasswordID");
    Map(x => x.UserID).Column("UserID");
    HasOne(x => x.User);
}
我希望用户属性在用户ID更改时自动更改

var pass = session.Load<Password>(1);
pass.UserID = 5; // User must become null or fetched Entity with ID = 5
var pass=session.Load(1);
pass.UserID=5;//用户必须成为null或ID为5的已提取实体
我知道RIA服务中有这样一个功能。但我在NHibernate找不到它


感谢您的帮助。

不,为什么??这样的行为绝对没有理由

使用
session.Load
session.Get
按ID获取对象

您甚至会通过更改用户ID引起问题,nh的自动更改跟踪可能会识别出这一点,并将使用新ID更新用户,并使用旧ID的用户属性