1
EntityA
与EntityB
有ManyToOne
关系,使用property-ref
属性和cascade="none"
。NH ManyToOne“对象是未保存的瞬态实例”
在NH 2.1,我可以使用下面的代码:
EnttiyA a = new EntityA();
a.EntityB = new EntityB();
a.EntityB.PropertyRef = 13;
session.Save(a);
和它的工作就像一个魅力。
现在,经过我升级到3.2 NH,同样的代码给我的一切太熟悉了:
object is an unsaved transient instance -
save the transient instance before merging:
我在做什么错? 2.1和3.2之间的关系是否有任何突破性变化?
[更新]:
只是为了使问题更加清晰 - 我不要创造一个新的EntityB,我想我的新EntityA有一个PropertyRef值参考现有EntityB的13.
谢谢!
只要保存之前保存的顺序都不重要, –
不,我不想保存一个新的EntityB,我只想将a的PropertyRef设置为13 – sternr
但是您明确创建_new_'EntityB'。如果你想使用现有的,使用'session.Load(13)'加载它。使用property-ref定义关系的事实不会改变您设置对象的方式。 –
NOtherDev