我有一个对象(对象A),它包含一个对象B的集合。我有我的映射类(流畅)设置,所有工作,问题是在尝试保存时。我想执行一次保存调用,然后还要保存所有对象B.同样,除了在保存对象A之后nHibernate没有在对象B上分配外键变量之外,这是有效的。
我相信在这种情况下使用逆(?)但它似乎对我不起作用。对象A具有集合的映射:
HasMany(x => x.Responses)
.Inverse()
.KeyColumn("[ParentID]")
.Not.LazyLoad()
.Cascade.All()
.AsBag();
对象B引用对象A:
References(x => x.Entry, "[ParentID]")
.LazyLoad()
.Cascade.None();
我认为Inverse将在对象B侧,但References不包含Inverse函数。
思想?
干杯
答案 0 :(得分:0)
我认为将对象B添加到对象A的集合中存在问题 看这里http://eashi.wordpress.com/2008/08/22/nhibernate-inverse-attribute/
答案 1 :(得分:0)
我用来在父类上创建AddChild
方法,如下所示:
public class Parent
{
public void AddChild(Child child)
{
child.Parent=this;
this.ChildrenCollection.Add(child);
}
...