我有以下对象模型:NHibernate的映射麻烦
- 顶层抽象类
Element
多子女和后代。 - A类
Event
。 - 每个
Element
包含一包Event
s。 - 每个
Event
都有一个父指针Element
。
到目前为止 - 相当标准的一对多关系。
但是,我想使用每个具体类策略的表。所以,类Element
未映射到数据库。我试图通过这种方式来解决它:Element
的每个具体后代都定义了它自己的袋子Event
s。这个问题是每个<bag>
元素包含一个<key>
元素。该关键指向Event
的Parent
财产。它还使Event
的表中的Parent
列成为包含Bag的表的外键!但是一列不能成为几个表的外键,而我在插入时遇到了异常。
我也试着让Event
的表中的Parent
字段成为多对多的字段。这工作。但是,当我想要使关系双向时,意思是,为了给Element
的后代添加行李,我会回到同样的问题。 Bag =>外键=>插入时出现异常。
我敢肯定,这种情况并不像看起来那么独特。 非常感谢您的帮助。