域:
class Category
string Name
class Product
IDictionary<string, Product> Parents
表:
Categories (ID, Name)
Products (ID)
ProductParents (ID, ParentID, ChildID, CategoryID)
问题:我需要获取父产品列表。是否可以将父产品映射到字典,以便我可以: product.Parents [ “类别名称”] 它将为我提供给定类别的父产品列表。
或者
product.Parents[Category("CategoryName")]
如果我使用
IDictionary<Category, Product> Parents
或者我该怎么做?也许像product.GetParentProducts(字符串类别)而不是属性的方法?不过,我宁愿使用字典。
请注意,我真的不想介绍ProductMapping类。
答案 0 :(得分:1)
NHibernate可以实现这一点;您正在寻找的是ternary association。
目前在Fluent NHibernate中没有这个,但我正在努力添加它。然而,由于FNH正在进行“重新布局”,它可能在一段时间内不可用。您最好的选择可能是使用标准HBM文件进行此映射。
如果您想进一步调查在FNH中进行此操作(请注意:您必须维护自己的本地库副本),您可以看到我已完成的工作at github。