这可能是一个非常简单的问题,但我是nHibernate的新手,我在解决这个问题上遇到了麻烦。
我有一个Page对象,它可以有很多Region对象。我还有一个Workflow对象。 Page和Region对象都与Workflow有关系,这是我遇到麻烦的双重关联。
PageMap有
HasMany(Function(x) x.Regions).Cascade.All()
RegionMap有:
References(Function(x) x.Page)
这一切似乎都有效。
但是如何定义Workflow与这两个对象之间的关系?
答案 0 :(得分:1)
你的数据库怎么样?如果两者都有工作流的外键,则两者都将Workflow
属性映射为:
References(Function(x) x.Workflow)
在每个映射类中。如果仅Page
拥有它,并且因此推断出Region
,则在Region
上添加未映射的只读属性,因此:
public Workflow Workflow { get { return Page.Workflow; } }