指数超出范围.必须非负且小于Nhibernate中收集错误的大小
本文关键字:Nhibernate 错误 小于 范围 指数 | 更新日期: 2023-09-27 18:04:21
我收到了异常
索引超出范围。必须非负且小于集合
当我尝试SaveOrUpdate
一个Bsa对象。我认为问题是我映射同一行两次,一次作为属性,一次作为子列表。
public BsaMap()
{
Schema("MYS");
Table("BSA");
Id(x => x.Id, "BSA_S").GeneratedBy.TriggerIdentity();
HasMany(x => x.BitTypeList).KeyColumn("BSA_S").Fetch.Subselect().Inverse().Not.LazyLoad().Cascade.SaveUpdate();
}
一个Bsa有很多BitType,每个BitType都有BSA_S作为它的外键。我该如何映射它,以避免错误?我喜欢我想保持BSA_S作为一个属性字段。
任何建议吗?
找到问题。在BitType实体中,我映射了两次BSA_S,一个是:
Map(x => x.BsaS).Column("BSA_S");
:
References(x => x.Parent).Column("BSA_S").Cascade.None().Not.LazyLoad().Not.Nullable();