Fluent nhibernate 如何在Fluent NHibernate中使用非ID字段进行引用?
请相信我,这是一个遗留系统,因此表关系并不理想 Dog具有字段ID、所有者和名称 狗屋有身份证、主人和名字。它没有对Dog的外键引用。相反,它与所有者和名称有关 在我的狗图中,我需要能够告诉它如何参考它的狗窝。我该怎么做?当我尝试Fluent nhibernate 如何在Fluent NHibernate中使用非ID字段进行引用?,fluent-nhibernate,Fluent Nhibernate,请相信我,这是一个遗留系统,因此表关系并不理想 Dog具有字段ID、所有者和名称 狗屋有身份证、主人和名字。它没有对Dog的外键引用。相反,它与所有者和名称有关 在我的狗图中,我需要能够告诉它如何参考它的狗窝。我该怎么做?当我尝试 Reference(x=>x.DogHouse). 我在圆点后面放什么?它不是ID,应该是所有者和名称。非ID字段必须是一个属性 Reference(x=> x.DogHouse, "Owner").PropertyRef(house => h
Reference(x=>x.DogHouse).
我在圆点后面放什么?它不是ID,应该是所有者和名称。非ID字段必须是一个属性
Reference(x=> x.DogHouse, "Owner").PropertyRef(house => house.Owner).Readonly();
因为两者都是必需的,所以我们必须使用一些技巧
DogHouse FakeReferenceProp { get; set; }
public DogHouseMap()
{
Component(x => FakeReferenceProp, c =>
{
c.Map(x => x.Owner, "Owner").Readonly();
c.Map(x => x.Name, "Name").Readonly();
});
}
// in DogMap
Reference(x=> x.DogHouse).Columns.Add("Owner", "Name").PropertyRef(house => FakeReferenceProp).Readonly();
非id字段必须是一个属性
Reference(x=> x.DogHouse, "Owner").PropertyRef(house => house.Owner).Readonly();
因为两者都是必需的,所以我们必须使用一些技巧
DogHouse FakeReferenceProp { get; set; }
public DogHouseMap()
{
Component(x => FakeReferenceProp, c =>
{
c.Map(x => x.Owner, "Owner").Readonly();
c.Map(x => x.Name, "Name").Readonly();
});
}
// in DogMap
Reference(x=> x.DogHouse).Columns.Add("Owner", "Name").PropertyRef(house => FakeReferenceProp).Readonly();