1
我有3類和它們的映射和他們每個人都有參考先前的類似:連貫NHibernate一到多用3類
A - >乙 - 「ç
A可以具有Ç但只有當B獲得了C(由於其不可能A - > C)
class A
{
public virtual int Id {get;set;}
public virtual string messageA {get;set;}
public virtual IList<B> Bs {get;set;}
}
class B
{
public virtual int Id {get;set;}
public virtual string messageB {get;set;}
public virtual A A {get; set;}
public virtual IList<C> Cs {get;set;}
}
class C
{
public virtual int Id {get;set;}
public virtual string messageC {get;set;}
public virtual B B{get;set;}
}
//Mappings
class AMap : ClassMap<A>
{
public AMap()
{
Id(x => x.Id);
Map(x => x.messageA);
HasMany(x => x.Bs);
}
}
class BMap : ClassMap<B>
{
public BMap()
{
Id(x => x.Id);
Map(x => x.messageB);
References(x => x.A).Cascade.All();
HasMany(x => x.Cs);
}
}
class CMap : ClassMap<C>
{
public CMap()
{
Id(x => x.Id);
Map(x => x.messageC);
References(x => x.B).Cascade.All();
}
}
我試圖犯這樣的錯誤:
對象引用的未保存瞬態實例 - 在沖洗之前保存瞬態 實例,或者將屬性的級聯操作設置爲 ,這會使其自動保存。類型:NHibernateTest.C,實體: NHibernateTest.C。
我一直在尋找解決方案,有人說我要修改外鍵更新規則爲級聯,我做到了,仍然沒有工作。
我只是想提一下,它正在與A - > B關係,當我添加C出現錯誤。