我想映射两个使用NHibernate关联的类m:n。 NH会将链接表中的简单m:n关联映射到实体表的外键约束。现在我想将更多属性附加到关联,如此示例所示:
图片链接损坏;已删除图片
(我希望NHibernate将这些属性存储在链接表中)
图片链接损坏;已删除图片
此UML图显示了如何“解析”关联类以进行编程。到目前为止,我自己做了这个并编写了3个类Person
,Book
和PersonBookLink
,PersonBookLink
具有returnDate
属性。 NHibernate与映射很好,但我正在寻找一种不太复杂的方法来浏览这个模型。
你如何在NHibernate中进行映射?
答案 0 :(得分:2)
没有那么复杂的方式。与额外属性的多对多关系被映射为两个一对多关系。您必须决定哪一方管理关系并在另一方的映射中设置inverse属性,以便NHibernate不会尝试两次插入链接记录。
我会把它建模为Person,Book和Lending,让Person控制关系(Person借书)。
PS - 我也会用这个项目作为一个用Shhhh(IEnumerable<Person> patrons)
方法写一个图书馆员班的机会。