我按照许多文章
的建议设置了我的映射文件和类class A { ... IList BBag {get;set;} ... }
class B { ... A aObject {get;set;} ... }
<class name="A">...<bag name="BBag" table="B" inverse="true" lazy="false"><key column="A_ID" /><one-to-many class="B" /></bag>...
<class name="B">...<many-to-one name="aObject" class="A" column="A_ID" />...
我在A表中添加了一组A,在B表中添加了一组B,所有数据都存储了
正如所料。但是,如果我尝试访问aInstance.BBag.Count
,我会得到一个空引用异常。我想我错过了关于如何实例化包的一些关键知识。
感谢
答案 0 :(得分:0)
我做了ARepository.Update(BOject);
,当我回电话时,由于某种原因我认为更新会自动发生。有没有办法自动更新行李,即一些映射文件设置?
答案 1 :(得分:0)
当你调用Save()/ SaveOrUpdate()/ Update()时,保存的对象的集合将不会被实例化/保存。
因此,如果需要集合元素,则必须再次选择对象。 如果您不想这样做,您可以创建已保存集合对象的集合,并将它们分配给已保存对象的集合属性。