根据这个主题Fluent nHibernate with Automapping: How to get a parent or "containg" object from a child
我用“父”属性制作了课程:
class Box
{
public virtual int Id { get; protected set;}
public virtual IList<Item> Items {get; protected set;}
}
class Item
{
public virtual int Id { get; protected set;}
public virtual Box Parent {get; set;}
}
正如上面的主题所示,我编写了一个约定,它将Parent
属性的键列设置为与Items
中Box
的键列相同。
不同之处在于我想在Inverse
属性上设置Parent
,而不是在收集端。有没有可能这样做?
我试图写出IReferenceConvention
的正确实现,但我没有看到那种可能性。
答案 0 :(得分:0)
没有直接的语法可以使多对一关系成为反向关系。
这有一些原因:
您可以通过使其无反转并禁止更新Parent属性来欺骗它。我不知道Fluent是否有可能。反正我也不会这样做。这只是在寻找麻烦。
使用XML映射,它看起来像这样:
<many-to-one name ="Parent" ... insert="false" update="false">
此处示例:http://www.codeproject.com/Articles/472019/Object-Relational-Mapping-ORM-u