NHibernate:集合中的空值
本文关键字:空值 集合 NHibernate | 更新日期: 2023-09-27 18:10:16
我有一个有序的与Position
字段的对象集合,当检索Nhibernate
集合时,在索引之间的间隙放置null
[例如:0-object, 1-null, 2-null, 3-object…]
我有这样的映射:
<list name="CheckListItems" lazy="true" inverse="true"
batch-size="25" cascade="all-delete-orphan">
<key column="TopicID" />
<index column="Position" />
<one-to-many class="CheckListItem" />
</list>
我希望NHibernate根据Position字段排序我的列表,而不考虑间隙
这是我认为无法关闭的NHibernate特性。如果索引列表中有漏洞,那么NHibernate会在漏洞的位置插入null。这正是你所看到的行为。
正如Ayende在他的博客文章中建议的那样,您的应用程序应该确保每当索引列表中有漏洞时,如果这是您想要的行为,则重新计算index属性以确保没有漏洞。NHibernate不能为你做这些。